enemys always looking at you when you are the target

This commit is contained in:
Remco
2016-05-25 11:46:22 +02:00
parent e7a7cc5588
commit d739141b25
4 changed files with 23 additions and 13 deletions
+3 -7
View File
@@ -67,13 +67,9 @@ void Enemy::update(float delta)
dz *= speed*delta;
position.x += dx;
position.z += dz;
position.z += dz;
rotation.y = atan2f(target.x - position.x, target.z - position.z) * 180 / M_PI;
}
/*rotation.y += 10.0f;
if (rotation.y >= 360.0f)
rotation.y = 0.0f;*/
//std::cout << atan2f(target.z - position.z, target.x - position.x) * 180 / M_PI << std::endl;
//rotation.y = atan2f(target.z - position.z, target.x - position.x) * 180 / M_PI ;
}
+17
View File
@@ -14,6 +14,18 @@ float Vec3f::Length()
return (float)sqrt(x*x+y*y+z*z);
}
void Vec3f::Normalize()
{
float length = this->Length();
if (length != 0)
{
x = x / length;
y = y / length;
z = z / length;
}
}
float Vec3f::Distance(const Vec3f &other)
{
return (float)sqrt(pow(other.x - x, 2)+pow(other.y - y, 2)+pow(other.z - z, 2));
@@ -42,6 +54,11 @@ Vec3f Vec3f::operator+(const Vec3f & other)
return Vec3f(x + other.x, y + other.y, z + other.z);
}
Vec3f Vec3f::operator-(const Vec3f & other)
{
return Vec3f(x - other.x, y - other.y, z - other.z);
}
Vec3f Vec3f::operator/(float value)
{
return Vec3f(x / value, y / value, z / value);
+2
View File
@@ -15,9 +15,11 @@ public:
Vec3f(const Vec3f &other);
Vec3f(float x, float y, float z);
float Length();
void Normalize();
float Distance(const Vec3f &);
float& operator [](int);
Vec3f operator + (const Vec3f &other);
Vec3f operator -(const Vec3f &other);
Vec3f operator / (float value);
bool operator ==(const Vec3f &other);
bool operator !=(const Vec3f &other);
+1 -6
View File
@@ -24,11 +24,6 @@
"id": 0,
"pos": [ 1, 2, -10 ],
"scale": 0.01
},
{
"id": 0,
"pos": [ 4, 2, -15 ],
"scale": 0.01
}
}
]
}