本文整理汇总了C++中vec4f类的典型用法代码示例。如果您正苦于以下问题:C++ vec4f类的具体用法?C++ vec4f怎么用?C++ vec4f使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了vec4f类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: matmultvec4f
void matmultvec4f(const float * matrix, const vec4f& v, vec4f& ssv)
{
ssv.x() = matrix[0] * v.peekx() + matrix[4] * v.peeky() + matrix[8] * v.peekz() + matrix[12] * v.peekw();
ssv.y() = matrix[1] * v.peekx() + matrix[5] * v.peeky() + matrix[9] * v.peekz() + matrix[13] * v.peekw();
ssv.z() = matrix[2] * v.peekx() + matrix[6] * v.peeky() + matrix[10] * v.peekz() + matrix[14] * v.peekw();
ssv.w() = matrix[3] * v.peekx() + matrix[7] * v.peeky() + matrix[11] * v.peekz() + matrix[15] * v.peekw();
}
开发者ID:c0d1f1ed,项目名称:piko-public,代码行数:7,代码来源:vecs.cpp
示例2: vec4f
// 4D
vec4f operator+(const vec4f& v1, const vec4f &v2)
{
return vec4f(v1.peekx()+v2.peekx(),
v1.peeky()+v2.peeky(),
v1.peekz()+v2.peekz(),
v1.peekw()+v2.peekw());
}
开发者ID:c0d1f1ed,项目名称:piko-public,代码行数:8,代码来源:vecs.cpp
示例3: baryCentricTriangle
// misc math
bool baryCentricTriangle(vec2f p, vec4f v1, vec4f v2, vec4f v3, float &u, float &v, float &r)
{
float x1mx3 = v1.x() - v3.x();
float x2mx3 = v2.x() - v3.x();
float y1my3 = v1.y() - v3.y();
float y2my3 = v2.y() - v3.y();
float det = (x1mx3 * y2my3) - (y1my3*x2mx3);
float pxmx3 = p.x() - v3.x();
float pymy3 = p.y() - v3.y();
if(det == 0.0 || det == -0.0) return false;
u = (y2my3*pxmx3 + x2mx3*-1*pymy3)/det;
v = (y1my3*-1*pxmx3 + x1mx3*pymy3)/det;
r = 1-u-v;
if (u > 1.0f || v > 1.0f || r > 1.0f) return false;
if (u < 0.0f || v < 0.0f || r < 0.0f) return false;
return true;
}
开发者ID:c0d1f1ed,项目名称:piko-public,代码行数:24,代码来源:vecs.cpp
示例4: setUniform
void Shader::setUniform(const std::string &name, const vec4f v, bool warn) {
glUniform4f(uniform(name, warn), v.x(), v.y(), v.z(), v.w());
}
开发者ID:cyrilcode,项目名称:cyfw,代码行数:3,代码来源:Shader.cpp
示例5: computetarget
static void computetarget() {
const float w = float(sys::scrw), h = float(sys::scrh);
const vec4f nc(w/2,h/2,1.f,1.f);
const vec4f world = game::invmvpmat * nc;
game::setworldpos(world.xyz()/world.w);
}
开发者ID:bsegovia,项目名称:mini.q,代码行数:6,代码来源:main.cpp
示例6: dot
float dot(const vec4f& v1, const vec4f& v2){
return ((v1.peekx()*v2.peekx())+
(v1.peeky()*v2.peeky())+
(v1.peekz()*v2.peekz()));
}
开发者ID:c0d1f1ed,项目名称:piko-public,代码行数:5,代码来源:vecs.cpp
注:本文中的vec4f类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论