学会了
学会了
一.
ARCamera:是主相机
二.
ARCamera中的Vuforia Behaviour下的Open按钮,点一下定位到Vuforla Configuration
三.
点击Vuforla Configuration中的Add License跳转到许可证获取界面。
四.
Develop(Get Basic免费|Buy Premium收费|Buy Cloud Add On收费)
输入许可证名字
许可证放入:Vuforla Configuration中
保留y轴旋转,其他不要
Vector3 eulerAngle=animator.deltaRotation.eulerAngles;//直接转为欧拉角
transform.rotation=new Vector3(0,eulerAngle.y,0);
animator.MatchTarget(target.position,taget.rotation,AvatarTarget.RightHand,new MatchTargetWeightMask(Vector3.one,1),0,0)
target.position 目标的位置
target.rotation 与目标的旋转保持一致
animator.MatchTarget
第一个参数:
匹配位置,胸口
第二个参数
匹配物体的旋转角度。匹配胸口的旋转是否一致
第三个参数
匹配的部分
屏蔽几个相同类型的动画根运动
animator.GetCurrentAnimatorStateInfo(0).IsTag("NeedMove")
在动画状态的Tag打上自己的tag
启用根运动:
1.Animator组件的Apply Root Motion打勾
2.对应动画的Animator设置不要打勾
移动跳跃不适用根运动
bug1:
子对象进行根运动时,只会作用在子对象自己身上。父对象不受影响
修改方法:
将父对象的位置加上animator产生的位移
private void OnAnimatorMove()
{
cbc.transform.position+=animator.deltaPosition;
cbc.transform.rotation*=animator.deltaPosition;
}
其中cbc是该物体的父物体的引用
其中旋转是*=,不是+=
我对教学品质感到非常质疑,因为出现了极差的示范教学,老师在教学过程中边嚼食物的情况。我认为这严重影响了课程的品质。在一个优质的教育环境中,示范教学应该是高水平的,能够清晰地传达知识和技能给学生。同时,老师应该展现出专业和尊重,包括在课堂上不应该同时吃东西,以确保学生能够专注和受到正确的榜样启发。这些因素都是课程品质的重要组成部分,如果被忽视或不合格地执行,将会影响学生的学习体验和教育质量。
这到底在在教什么东西....
老师确实可以 把知识点讲解的很清楚哈
停止协程的方法
不仅知道怎么去用,还要去知道怎么合理使用他。一定要结合项目去学一个技术。
甜甜甜甜甜
按钮点击音设置:
UIConfig.buttonSound = (NAudioClip)UIPackage.GetItemAssetByURL("ui://Res_Main/Tap");
TMP_Text如果标签没效果可能是字体问题
算错了 -35
据我分析,此方法是用碰撞体的线替代了射线的点
先图层再排序
解决切枪bug不够完善,
假定枪械数量>3。
0,1,2,3
拾取0,2后鼠标滑轮依旧无法完成切枪。
目前知识滴优化思路:
1.自动切枪逻辑不变
2.将武器ID列表按照从小到大的顺序排序,并转化为一个数组。手动切枪时根据curIndex和%运算符实现循环切枪。
public void ChangeCurWeapon(bool autoChange = false)
{
//todo 拾取武器的id不连续时无法切枪bug √
if (autoChange)
{
//第一次拾取时,切换最新拾取武器
ChangeWeapon(weaponDict.Keys.Last());
}
else
{
var weaponIDs = weaponDict.Keys.OrderBy(id => id).ToArray();//将key小大排序形成数组
var curIndex = Array.IndexOf(weaponIDs, curWeaponID);
if (Input.GetAxis("Mouse ScrollWheel") > 0)//向上滑
{
curIndex = (curIndex + 1) % weaponIDs.Length;
ChangeWeapon(weaponIDs[curIndex]);
}
else if (Input.GetAxis("Mouse ScrollWheel") < 0)//向下滑
{
curIndex = (curIndex + weaponIDs.Length - 1) % weaponIDs.Length;
ChangeWeapon(weaponIDs[curIndex]);
}
}
}
计算当前不精确度,确定射击夹角(不精确度越大,射击夹角越大,越不准)。
公式为:当前不精确度 = 最小不精确度 + 当前不稳定性。
注:
站立切走动时(不稳定性变大时),瞬间赋值;
走动切站立时(不稳定性变小时),慢慢递减赋值直到相等。