题目
unity3d 貌似是bezier曲线的一个函数,
public Vector3 Interp(Vector3[] pts,float t)
{
int numSections = pts.Length - 3;
int currPt = Mathf.Min(Mathf.FloorToInt(t * (float)numSections),numSections - 1);
float u = t * (float)numSections - (float)currPt;
Vector3 a = pts[currPt];
Vector3 b = pts[currPt + 1];
Vector3 c = pts[currPt + 2];
Vector3 d = pts[currPt + 3];
return .5f * (
(-a + 3f * b - 3f * c + d) * (u * u * u)
+ (2f * a - 5f * b + 4f * c - d) * (u * u)
+ (-a + c) * u
+ 2f * b
);
}
这是一个建公路的插件里面的,就是能创建路径点,通过拖拉路径点可以改变公路的形状.
Vector3 prevPt = Interp(vector3s,0);
int SmoothAmount = path.Length * SmoothSens; //path里装的应该是路径点,smoothsens是调整公路平滑的.
for (int i = 1; i
public Vector3 Interp(Vector3[] pts,float t)
{
int numSections = pts.Length - 3;
int currPt = Mathf.Min(Mathf.FloorToInt(t * (float)numSections),numSections - 1);
float u = t * (float)numSections - (float)currPt;
Vector3 a = pts[currPt];
Vector3 b = pts[currPt + 1];
Vector3 c = pts[currPt + 2];
Vector3 d = pts[currPt + 3];
return .5f * (
(-a + 3f * b - 3f * c + d) * (u * u * u)
+ (2f * a - 5f * b + 4f * c - d) * (u * u)
+ (-a + c) * u
+ 2f * b
);
}
这是一个建公路的插件里面的,就是能创建路径点,通过拖拉路径点可以改变公路的形状.
Vector3 prevPt = Interp(vector3s,0);
int SmoothAmount = path.Length * SmoothSens; //path里装的应该是路径点,smoothsens是调整公路平滑的.
for (int i = 1; i
提问时间:2020-12-19
答案
这个你得先去看一下bezier曲线的基础知识.
代码就是通过点数的不同,进行插值运算.获得曲线.
代码就是通过点数的不同,进行插值运算.获得曲线.
举一反三
已知函数f(x)=x,g(x)=alnx,a∈R.若曲线y=f(x)与曲线y=g(x)相交,且在交点处有相同的切线,求a的值和该切线方程.
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
奥巴马演讲不用看稿子.为什么中国领导演讲要看?
想找英语初三上学期的首字母填空练习……
英语翻译
最新试题
- 1对我而言,饺子很好吃.译成英语是什么?
- 2把下面的句子合并为一个有定语从句的复合句,
- 3用以下四个词组个造一个句子
- 4慢车与快车的速度比是3:4,两车同时从甲乙地相向而行,在离中点8千米处相遇.求甲乙两地相距多少千米?
- 5神圣的事业总是痛苦的,但是也惟有这种痛苦能把深沉给予我们,举出例子说明这句话的意思.
- 6根据分子中含有的氢原子个数将酸分为一元酸,二元酸等,这句话对吗?为何?
- 7你发现了什么规律?用含有字母的式子表示出来.
- 8i want to buy a nice present___my mother and i must give it___her myself
- 9有一个滑动变阻器 向左边移动电阻减小 右边移动电阻加大 向左边移动时 电流加大 那电压呢
- 10将一个底面直径为2分米的金属圆锥体全部没入半径为20cm的圆柱形玻璃槽中,这时水槽的水面比原来升高1.5厘米,这个金属圆锥体的高是多少?
热门考点