2023.3.9
思路:把苹果挂在树上,开始苹果没有重力,当用手摘下后,有重力,
此时树枝播放颤动动画。
目前:树枝使用网格碰撞器。
当与其他碰撞体接触并离开后,播放动画。
private void OnTriggerExit(Collider other)
{
ani.Play();
}
2023.3.10
private void OnTriggerExit(Collider other){}使用该方法时,(两个碰撞器中至少有一个开启了IsTrigger,产生触发事件的两个物体会相互穿越)
如何使父物体的中心与子物体中心重合。
上午:树枝在苹果离开后颤动,苹果在离开树枝后添加重力作用,苹果可以落到篮子里。
果篮添加的是网格碰撞体。(通常两个网格碰撞体之间不会发生碰撞,但是它们都可以与基本碰撞体发生碰撞,如果要让它发生碰撞:开启Convex属性)
为了使网格贴合果篮模型,不勾选Convex,篮子无勾选Convex,苹果可以落到篮子里。
2023.3.13
篮子添加rigidbody后,有两个问题:
1.篮子会掉到地下。如果勾选Convex,添加的网格不符合篮子的真实感,无法装载苹果。
2.苹果穿模,篮子无法装载苹果。
2023.3.16
blender如何把物体坐标系改为底部中心:全选底部的点,按Shift+s,选中游标->选中项,进入物体模式,点击鼠标右键,设置原点,原点->3D游标。
2023.3.23
套用网上的贝塞尔曲线模拟钓鱼竿的弯曲。【Unity】弹性鱼竿简单实现-通过贝塞尔曲线修改Mesh_飞天的虾的博客-CSDN博客,设置了6个关键点,运行结果如下:
2023.3.24
blender修改把物体局部坐标系轴向:按Ctrl+.(句号键),在物体模式下,选择物体->变换->变换到对齐坐标系。在做下角选择合适坐标系(推荐视图)。
2023.3.29
一运行,苹果飞跑了,在关闭unity,再重启就好了
2023.3.30
如果把竹篮从预制件变成普通物体,添加mesh碰撞器也无法实现碰撞检测。
但如果在竹篮是预制件的时候,添加mesh碰撞器就可以实现碰撞检测,变成普通物体,依然可以实现碰撞检测。
2023.3.31
Non-convex MeshCollider with non-kinematic Rigidbody is no longer supported since Unity 5.
在unity5后,不勾选convex 的MeshCollider与不勾选kinematic的 Rigidbody不能共存。
2023.4.11
在使用没有带手持把的竹篮,添加rigdbody和mesh collider后,添加脚本Hi 5 Plane,并把层次改为Hi5Plane后,运行。发现苹果可以掉落到竹篮里了。但运行刚开始很卡,需要等待十几秒。
项目。太卡。。。估计运行都要两三分钟
使用带手持把的竹篮,这样设置后,也可以装载苹果啦。
2023.4.13
利用贝塞尔曲线实现unity中三维物体的弯曲。mesh所包含的顶点要多,顶点较少会是物体扭曲,甚至在空间极度扭曲到不可见。
2023.4.14
在用上图中的圆柱模型和代码,同样设置了6个空物体作为控制点,但运行后,物体变形,且点无法实现位置偏移。
把4.13中的6个控制点复制到新的场景,替换自己设置的,就可以正常运行了。
2023.4.23
运行悬臂梁案例:MainStrip.cs
2023.5.6
在AdTree的集成软件中,点击Showdowing后,再去显示或隐藏骨架(shift+B)才可见。
ChatGpt给出的毕设思路。
实现虚拟果实采摘的思路和方法可以分为以下几个步骤:
-
创建虚拟果实模型:在Unity中创建虚拟果实模型,可以使用Unity自带的3D模型或者导入第三方模型。确保果实模型具有逼真的外观和交互响应。
-
数据手套的连接:选择一个适用于Unity的数据手套,确保手套与计算机的连接稳定。数据手套一般会提供一些API和工具,可以在Unity中调用这些API和工具,实现手套与虚拟环境的交互。
-
设置手套跟踪点:为了能够精确地捕捉手套在虚拟环境中的位置和姿态,需要在Unity场景中设置手套的跟踪点。可以使用Unity的Transform组件来实现手套的跟踪。
-
实现手势识别:使用手套的API和工具,可以实现手势识别功能。可以为不同的手势分配不同的操作,例如,使用手指捏住果实并移动手臂将果实放到篮子里。
-
碰撞检测:使用Unity的碰撞检测功能,确保当手指接触到果实时,果实可以被正确地捕捉和移动。
-
篮子的实现:在Unity中创建一个篮子模型,并使用碰撞检测功能,确保果实可以正确地被放入篮子中。篮子可以设置为虚拟的,也可以使用第三方硬件实现真实的篮子。
-
添加音效和动画:为了增加交互的真实感和乐趣,可以为果实采摘和放入篮子的动作添加音效和动画。
通过上述步骤,就可以实现一个基于Unity和数据手套的虚拟果实采摘系统。
2023.6.28
进行代码注释
2023.8.22
做了一个果园雏形,没有果树,计划一边苹果,一边橘子。
2023.11.9
拍了三十张照片,重建个毛
其他
2023.3.23
布料cloth,只会与胶囊碰撞体和球形碰撞体发生碰撞。
2023.3.28
碰撞检测的最低限制条件:1.双方必须有碰撞核(Colider)2.有一方必须有物理特性(Rigibody)
触发器检测条件:1.其中一方具备刚体(Rigibody) 2.碰撞双方触发器(Is Trigger)
Unity 为了节约性能,为刚体添加了休眠机制。
// 获取刚体是否处于休眠状态 如果是
if (rigidBody.IsSleeping())
{rigidBody.WakeUp(); // 就唤醒它
}