- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
#include <math.h>
#include <assert.h>
#include "vector10d.h"
float vcompare_epsilon10d = 0.0005f;
ml inlined float v10d_getElement(vec10d *v, int index)
{
assert( v != 0);
assert( index >= 0 );
assert( index < 3 );
return (* ((&((v)->x)) + (index) ));
}
ml inlined bool v10d_isValid(const vec10d *v)
{
if(v == 0) return g_false;
if((v->x * v->x) < 0.0f)return g_false;
if((v->y * v->y) < 0.0f)return g_false;
if((v->z * v->z) < 0.0f)return g_false;
if((v->w * v->w) < 0.0f)return g_false;
if((v->m * v->m) < 0.0f)return g_false;
if((v->n * v->n) < 0.0f)return g_false;
if((v->o * v->o) < 0.0f)return g_false;
if((v->p * v->p) < 0.0f)return g_false;
if((v->r * v->r) < 0.0f)return g_false;
if((v->s * v->s) < 0.0f)return g_false;
return g_true;
}
ml inlined void v10d_set(vec10d *v, float x, float y, float z, float w, float m,
float n, float o, float p, float r, float s)
{
assert(v = 0);
v->x=x;
v->y=y;
v->z=z;
v->w=w;
v->m=m;
v->n=n;
v->o=o;
v->p=p;
v->r=r;
v->s=s;
assert( v10d_isValid(v) != g_false );
}
ml inlined void v10d_get(const vec10d *v, float *x, float *y, float *z, float *w,
float *m, float *n, float *o, float *p, float *r, float *s)
{
assert ( v != 0 );
assert ( x != 0 );
assert ( y != 0 );
assert ( z != 0 );
assert ( w != 0 );
assert ( m != 0 );
assert ( n != 0 );
assert ( o != 0 );
assert ( p != 0 );
assert ( r != 0 );
assert ( s != 0 );
assert( v10d_isValid(v) != g_false );
*x = v->x;
*y = v->y;
*z = v->z;
*w = v->w;
*m = v->m;
*n = v->n;
*o = v->o;
*p = v->p;
*r = v->r;
*s = v->s;
}
Сие чудо нарыл на просторах интернетов. Для ценителей весь исходник http://pastebin.org/114060 .. Очевидно чуваки писали очередной Crysis :)
guest 16.03.2010 13:55 # +1
guest 16.03.2010 13:56 # +1.2
Как это понимать?
guest 18.03.2010 16:45 # 0
pushkoff 19.03.2010 15:23 # 0
guest 19.03.2010 18:29 # 0
pushkoff 24.03.2010 16:13 # +0.2
dir.X/dir.X != 1
в комментах написано что это проверка на NaN...
начинаю подозревать заговор...
guest 16.03.2010 15:17 # +2.4
лучше загляните сюда: http://www.job57.narod.ru/asp2/11/index.htm
автор копипастит методы по 30 раз. это покруче будет вашего такого.
вообще известный персонаж, если здесь ещё не упоминался, то ищите ник vbnet2000 на sql.ru
guest 16.03.2010 15:18 # +0.2
извините за пеар, но мне в лом региться чтобы наговнокодить. если есть люди добры, перепостьте сюда его шыдевры
guest 16.03.2010 15:25 # +2.2
guest 16.03.2010 15:34 # −0.8
guest 16.03.2010 15:43 # +0.6
вот типичный эпичный тред http://www.sql.ru/forum/actualthread.aspx?bid=9&tid=467673&hl=
никаких личных обид. ладно, пойду спать.
guest 16.03.2010 22:22 # +0.8
guest 19.03.2010 20:01 # +0.8
guest 16.03.2010 22:24 # +1
guest 17.03.2010 15:01 # +0.2
guest 17.03.2010 05:08 # −0.2
guest 18.03.2010 16:51 # −1.6
вс
пнтн
ж
св
см
,
д?
guest 18.03.2010 21:45 # −1.6
Н
крм
strct
е
щ
и
мсвы.
guest 28.03.2010 12:06 # +0.2
guest 28.03.2010 12:09 # +0.2
assert( index >= 0 );
assert( index < 3 );
guest 01.04.2010 19:25 # +0.2
guest 28.03.2010 12:07 # +0.2
guest 28.03.2010 12:10 # +0.4
assert(v = 0);