地形开挖效果
扩展slice的glsl代码,实现开挖效果

核心代码:
bool caculateSide(vec3 VecPoint1, vec3 VecPoint2, vec3 Rel){
float L1=length(VecPoint1);
float L2= length(VecPoint2);
float LR= length(Rel);
float m1=L1/LR;
float m2=L2/LR;
vec3 v1 = cross(VecPoint1,VecPoint2);
vec3 v2 = cross(VecPoint1,Rel);
float dot_1=dot(v1,v2);
vec3 v3 = cross(VecPoint2,VecPoint1);
vec3 v4 = cross(VecPoint2,Rel);
float dot_2=dot(v3,v4);
vec3 v5 = cross(VecPoint1-VecPoint2,-VecPoint2);
vec3 v6 = cross(VecPoint1-VecPoint2,Rel-VecPoint2);
float dot_3=dot(v5,v6);
bool line1=(m1*Rel.x==VecPoint1.x)&&dot(VecPoint1,Rel)>0.0;
bool line2=(m2*Rel.x==VecPoint2.x)&&dot(VecPoint2,Rel)>0.0;
return (dot_1>0.0&&dot_2>0.0&&dot_3>0.0)||line1||line2;
}
2748

被折叠的 条评论
为什么被折叠?



