Ray实际上就是一个Vector3,我们在调试的时候可以使用Debug.DrawRay()这个函数。注意这个函数可以设置ray的颜色,这样方便我们直观的看出来,这个debug的只能在scene的时候显示,因此需要我们开两个小的窗口,一个显示scene,一个显示game,而我们在game窗口进行操作的时候,scene那里就可以显示ray的位置了。简单的示例如下:
Color color = hit ? Color.green : Color.red;
Debug.DrawRay (transform.position, Vector3.forward * 10, color);
今天遇到的一个奇怪的bug,就是我创建了一个tk2dSprite,但即使我加入了box collider之后,还是无法产生raycast的hit事件,之后查阅很多网站,终于发现原来如果一个sprite是在sprite collection之中的话,那么这个sprite collection会定义这个sprite的collider的类型,如果是none,那么即使我们在外面定义box collider也是没有用处的,解决方案一种是在sprite collection中将类型变成user defined,另外就是在collection中定义好,然后外面不需要添加自己的collider即可。
官方作者的解释:
引用
The reason this is happening, is that you are trying to create your own collider, while the setting in the SpriteCollection for the particular sprite is "None".
When an object already has a box collider and the sprite is set to "None" collision, 2d toolkit will set its bounds to 0,0,0 and origin z to -100000. This is primarily for animation, for instance, if 5 frames of animation have a collider and 3 dont.
2 ways to solve this -
1. if you need to mange the collider yourself, set it to "Unset" in the sprite collection. This means, the sprite will not try to manage the collider, and you can do what you wish with it.
2. Set it to BoxTrimmed in the Sprite collection. You won't need to manage the collider any more at this point, and it will automatically fit the visible part of the texture.
Hope this helps.
分享到:
相关推荐
本教程将探讨如何在Unity中实现2DSprite的边缘酷炫发光效果,这是一个非常吸引眼球且能提升游戏视觉质量的技术。这个效果常用于突出角色、道具或其他重要元素,使它们在场景中更加醒目。 首先,我们要理解Unity中的...
unity3d tk2d 2DToolkit 1.92 最终正式版
这个“unity 2DSprite 边缘发光特效”教程旨在教你如何在Unity中创建这种引人注目的效果。下面将详细介绍这个特效的实现步骤和相关知识点。 1. **Unity基础知识**: Unity是一款跨平台的游戏开发工具,支持2D和3D...
Unity 2D特效资源包 2DxFX 2D Sprite FX v2.3.7.unitypackage
2. **对象和角色**:游戏中有各种鱼类、炮台、金币等对象,这些都需要通过3D建模和纹理贴图来创建。Unity3D支持导入多种3D模型格式,如.fbx,.obj等。 3. **游戏逻辑**:捕鱼的核心在于射击和得分机制。编写C#脚本...
UNITY 开发文本插件
总结,Unity3D的Ray射线是游戏开发中不可或缺的一部分,熟练掌握其用法和优化技巧,能显著提升交互体验和性能。通过实践项目如"RayTest",你可以更好地理解和运用这些概念,提升Unity开发能力。
"U3D TK2D资源包2.0" 是Unity 3D平台上的一个专门针对2D游戏开发的重要工具,它提供了丰富的功能,帮助开发者高效地创建和管理2D游戏内容。TK2D(Toolkit 2D)是Unity社区中广泛使用的插件,其2.0版本带来了许多优化...
1. 安装AE2Unity插件:首先,确保你的AE和Unity版本兼容,然后下载并安装AE2Unity插件。 2. 准备动画项目:在AE中创建或打开你的动画项目,确保所有需要导出的元素都被选中。 3. 导出为Unity格式:使用AE2Unity...
unity开发的2D图片资源 包括npc,player的各种人物动作图,游戏画面素材,场景图标,天空,声音图标,飞鸟,怪物等各种2D游戏图标。 unity开发的2D图片资源 包括npc,player的各种人物动作图,游戏画面素材,场景图标...
Unity游戏代码 ,Unity经典游戏源码 , Unity休闲游戏源码, Unity容易上手的游戏源码,Unity小游戏源码,Unity新手练习源码,Unity个人开发源码,Unity优秀项目,Unity商店优秀作品。 unity多人RPG游戏源码uMMORPG 2D 1.3,...
Unity提供了多种压缩选项,如ETC2、ASTC等,可以根据平台和性能需求进行选择。在创建Texture2D对象时,可以通过调整`TextureFormat`参数来指定压缩格式。 综上所述,BitmapToTexture2D转换是Unity3D中处理图像资源...
例如,它可能提供了一套完整的骨骼追踪系统,用于显示和操作用户的虚拟形象,或者包含了一些基础的深度图处理函数,帮助开发者解析和利用来自Kinect v2的深度数据。 在使用Kinect v2 Unity开发包时,开发者需要熟悉...
2. **面部识别**:Kinect V2可以捕捉并分析面部表情,包括眼睛、嘴巴和头部的运动,从而实现更加细腻的互动体验。 3. **语音识别**:集成的语音识别功能允许用户通过自然语言控制游戏或应用程序,增强了用户体验。 ...
下面将详细探讨Unity2D游戏制作的相关知识点。 1. **Unity引擎**:Unity是一款强大的跨平台游戏开发工具,支持2D和3D游戏的制作。它的可视化编辑界面、脚本系统和预览功能使得游戏开发变得更加高效和直观。 2. **2...
最新Unity插件SteamVR Plugin steamvr_2_8_0.unitypackage最新Unity插件SteamVR Plugin steamvr_2_8_0.unitypackage最新Unity插件SteamVR Plugin steamvr_2_8_0.unitypackage最新Unity插件SteamVR Plugin steamvr_2_...
2. **2D Toolkit插件**:2D Toolkit(简称TK2D)是Unity的一个强大2D扩展,提供了2D精灵、瓷砖地图、动画、碰撞检测等功能。它简化了2D游戏的开发流程,使得开发者无需深入学习复杂的编程就能构建出专业级别的2D游戏...
unity Top Down Shooter ToolKit (TDS-TK) 1.3
### Unity 重新设置Texture2D的大小 在Unity游戏开发中,经常需要处理各种纹理(Textures),特别是当涉及到动态创建或调整纹理大小时。本文将详细介绍如何使用Unity中的`Texture2D`类来重新设置其大小,并提供一个...
UnityRayMarching Unity Raymarching示例示例1:我尝试根据有关Raymarching的AlanZucconi文章实施此着色器 示例2:游览 示例3:体素环面 示例3:重复 示例4:分数布朗运动去做: 1,帮助我进行示例2中的纹理贴图之旅...