mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2024-11-11 07:42:18 +00:00
[gamecode] Implement the scale instructions
Both float 2,3,4 vectors and double 2,3,4 vectors (1 would be just a copy of the mul instructions). This completes the currently planned instructions. Now for testing.
This commit is contained in:
parent
3587b13a40
commit
424bdcbf96
1 changed files with 18 additions and 2 deletions
|
@ -3313,12 +3313,28 @@ pr_exec_ruamoko (progs_t *pr, int exitdepth)
|
|||
case OP_SWIZZLE_F:
|
||||
OPC(ivec4) = pr_swizzle_f (OPA(ivec4), st->b);
|
||||
break;
|
||||
//FIXME scale ops
|
||||
case OP_SCALE_F_2:
|
||||
OPC(vec2) = OPA(vec2) * OPB(float);
|
||||
break;
|
||||
case OP_SCALE_F_3:
|
||||
VectorScale (&OPA(float), OPB(float), &OPC(float));
|
||||
break;
|
||||
case OP_SCALE_F_4:
|
||||
OPC(vec4) = OPA(vec4) * OPB(float);
|
||||
break;
|
||||
OP_cmp_T (LT, U, long, lvec2, lvec4, <, ulong, ulvec2, ulvec4);
|
||||
case OP_SWIZZLE_D:
|
||||
OPC(lvec4) = pr_swizzle_d (OPA(lvec4), st->b);
|
||||
break;
|
||||
//FIXME scale ops
|
||||
case OP_SCALE_D_2:
|
||||
OPC(dvec2) = OPA(dvec2) * OPB(double);
|
||||
break;
|
||||
case OP_SCALE_D_3:
|
||||
VectorScale (&OPA(double), OPB(double), &OPC(double));
|
||||
break;
|
||||
case OP_SCALE_D_4:
|
||||
OPC(dvec4) = OPA(dvec4) * OPB(double);
|
||||
break;
|
||||
// 1 1010
|
||||
OP_cmp_T (GT, u, int, ivec2, ivec4, >, uint, uivec2, uivec4);
|
||||
// spare
|
||||
|
|
Loading…
Reference in a new issue