Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
J2DTevs.h
Go to the documentation of this file.
1#ifndef J2DTEVS_H
2#define J2DTEVS_H
3
4#include <dolphin/gx.h>
5#include <dolphin/mtx.h>
6#include "global.h"
7
13 /* 0x00 */ f32 mScaleX;
14 /* 0x04 */ f32 mScaleY;
15 /* 0x08 */ f32 mRotationDeg;
16 /* 0x0C */ f32 mTranslationX;
17 /* 0x10 */ f32 mTranslationY;
18}; // Size: 0x14
19
25 enum {
26 /* 0x0 */ DCC_NONE,
27 /* 0x1 */ DCC_MAYA,
28 };
29
30 /* 0x00 */ u8 mTexMtxType;
31 /* 0x01 */ u8 mTexMtxDCC;
32 /* 0x02 */ u8 field_0x2; // padding ?
33 /* 0x03 */ u8 field_0x3; // padding ?
34 /* 0x04 */ Vec mCenter;
36
39 mCenter = other.mCenter;
41 mTexMtxDCC = other.mTexMtxDCC;
43 return *this;
44 }
45
46}; // Size: 0x24
47
49
54class J2DTexMtx {
55public:
58 J2DTexMtx(const J2DTexMtxInfo& info) { mInfo = info; }
59 void load(u32);
60 void calc();
64 void setTexMtxInfo(J2DTexMtxInfo info) { mInfo = info; }
65
66private:
67 /* 0x00 */ J2DTexMtxInfo mInfo;
68 /* 0x24 */ Mtx mTexMtx;
69};
70
76 /* 0x0 */ u8 mTexCoordID;
77 /* 0x1 */ u8 mTexMapID;
78
81 mTexMapID = other.mTexMapID;
82 return *this;
83 }
86};
87
89
95public:
100 mInfo = info;
101 }
103 mInfo = info;
104 return *this;
105 }
106 void setIndTexOrderInfo(const J2DIndTexOrderInfo& info) { mInfo = info; }
107 void load(u8);
108
109private:
111};
112
118 /* 0x00 */ Mtx23 mMtx;
119 /* 0x18 */ s8 mScaleExp;
120
122 for (int i = 0; i < 2; i++) {
123 for (int j = 0; j < 3; j++) {
124 mMtx[i][j] = other.mMtx[i][j];
125 }
126 }
127 mScaleExp = other.mScaleExp;
128 return *this;
129 }
130};
131
133
139public:
145 mIndTexMtxInfo = info;
146 }
148 mIndTexMtxInfo = info;
149 return *this;
150 }
152 void load(u8);
153 void load(u32);
154 void calc();
155
156private:
158}; // Size: 0x1C
159
165 /* 0x0 */ u8 mScaleS;
166 /* 0x1 */ u8 mScaleT;
167
169 mScaleS = other.mScaleS;
170 mScaleT = other.mScaleT;
171 return *this;
172 }
175};
176
178
184public:
190 mInfo = info;
191 }
193 mInfo = info;
194 return *this;
195 }
197 void load(u8);
198
199private:
201}; // Size: 0x2
202
208 /* 0x0 */ u8 mIndStage;
209 /* 0x1 */ u8 mIndFormat;
210 /* 0x2 */ u8 mBiasSel;
211 /* 0x3 */ u8 mMtxSel;
212 /* 0x4 */ u8 mWrapS;
213 /* 0x5 */ u8 mWrapT;
214 /* 0x6 */ u8 mPrev;
215 /* 0x7 */ u8 mLod;
216 /* 0x8 */ u8 mAlphaSel;
217 /* 0x9 */ u8 field_0x9;
218 /* 0xa */ u8 field_0xa;
219 /* 0xb */ u8 field_0xb;
220
222 mIndStage = other.mIndStage;
223 mIndFormat = other.mIndFormat;
224 mBiasSel = other.mBiasSel;
225 mMtxSel = other.mMtxSel;
226 mWrapS = other.mWrapS;
227 mWrapT = other.mWrapT;
228 mPrev = other.mPrev;
229 mLod = other.mLod;
230 mAlphaSel = other.mAlphaSel;
231 return *this;
232 }
233};
234
236 return (info.mAlphaSel << 22) | (info.mLod << 21) | (info.mPrev << 20) |
237 (info.mMtxSel << 16) | (info.mWrapT << 11) | (info.mWrapS << 8) |
238 (info.mBiasSel << 4) | (info.mIndFormat << 2) | (info.mIndStage);
239}
240
242
248public:
249 void load(u8);
256
258
259private:
260 /* 0x0 */ u32 mFlags;
261
262 u8 getIndStage() const { return (mFlags & 0x03); }
263 u8 getIndFormat() const { return (mFlags >> 2) & 0x03; }
264 u8 getBiasSel() const { return (mFlags >> 4) & 0x07; }
265 u8 getWrapS() const { return (mFlags >> 8) & 0x07; }
266 u8 getWrapT() const { return (mFlags >> 11) & 0x07; }
267 u8 getMtxSel() const { return (mFlags >> 16) & 0x0F; }
268 u8 getPrev() const { return (mFlags >> 20) & 0x01; }
269 u8 getLod() const { return (mFlags >> 21) & 0x01; }
270 u8 getAlphaSel() const { return (mFlags >> 22) & 0x03; }
271};
272
278 /* 0x0 */ u8 mTexGenType;
279 /* 0x1 */ u8 mTexGenSrc;
280 /* 0x2 */ u8 mTexGenMtx;
282
284 mTexGenType = other.mTexGenType;
285 mTexGenSrc = other.mTexGenSrc;
286 mTexGenMtx = other.mTexGenMtx;
287 return *this;
288 }
289};
290
292
298public:
302
304 mTexCoordInfo = info;
305 }
306 void setTexCoordInfo(const J2DTexCoordInfo& info) { mTexCoordInfo = info; }
307 void setTexGenMtx(u8 texGenMtx) { mTexCoordInfo.mTexGenMtx = texGenMtx; }
311
312private:
314};
315
321 /* 0x0 */ u8 mTexCoord;
322 /* 0x1 */ u8 mTexMap;
323 /* 0x2 */ u8 mColor;
324 /* 0x3 */ u8 field_0x3;
325
327 mTexCoord = other.mTexCoord;
328 mTexMap = other.mTexMap;
329 mColor = other.mColor;
330 return *this;
331 }
332};
333
335
341public:
345
347 *(J2DTevOrderInfo*)this = info;
348 }
349
350 void setTevOrderInfo(const J2DTevOrderInfo& info) {mTevOrderInfo = info; }
351 u8 getColor() const { return mTevOrderInfo.mColor; }
352 u8 getTexMap() const { return mTevOrderInfo.mTexMap; }
354
356};
357
363 /* 0x00 */ u8 field_0x0;
364 /* 0x01 */ u8 mColorA;
365 /* 0x02 */ u8 mColorB;
366 /* 0x03 */ u8 mColorC;
367 /* 0x04 */ u8 mColorD;
368 /* 0x05 */ u8 mCOp;
369 /* 0x06 */ u8 mCBias;
370 /* 0x07 */ u8 mCScale;
371 /* 0x08 */ u8 mCClamp;
372 /* 0x09 */ u8 mCReg;
373 /* 0x0A */ u8 mAlphaA;
374 /* 0x0B */ u8 mAlphaB;
375 /* 0x0C */ u8 mAlphaC;
376 /* 0x0D */ u8 mAlphaD;
377 /* 0x0E */ u8 mAOp;
378 /* 0x0F */ u8 mABias;
379 /* 0x10 */ u8 mAScale;
380 /* 0x11 */ u8 mAClamp;
381 /* 0x12 */ u8 mAReg;
382 /* 0x13 */ u8 field_0x13;
383};
384
386
392 /* 0x0 */ u8 mRasSel;
393 /* 0x1 */ u8 mTexSel;
394 /* 0x2 */ u8 field_0x2;
395 /* 0x3 */ u8 field_0x3;
396};
397
399
405public:
415 setColorABCD(info.mColorA, info.mColorB, info.mColorC, info.mColorD);
416 setTevColorOp(info.mCOp, info.mCBias, info.mCScale, info.mCClamp, info.mCReg);
417 setAlphaABCD(info.mAlphaA, info.mAlphaB, info.mAlphaC, info.mAlphaD);
418 setTevAlphaOp(info.mAOp, info.mABias, info.mAScale, info.mAClamp, info.mAReg);
419 }
420
421 void setStageNo(u32 param_0) {
422 field_0x0 = (param_0 << 1) + 0xc0;
423 field_0x4 = (param_0 << 1) + 0xc1;
424 }
425
427 setTexSel(swapInfo.mTexSel);
428 setRasSel(swapInfo.mRasSel);
429 }
430
431 void setTexSel(u8 param_0) {
432 field_0x7 = (field_0x7 & ~0x0c) | (param_0 << 2);
433 }
434
435 void setRasSel(u8 param_0) {
436 field_0x7 = (field_0x7 & ~0x03) | param_0;
437 }
438
439 void setColorABCD(u8 a, u8 b, u8 c, u8 d) {
440 setTevColorAB(a, b);
441 setTevColorCD(c, d);
442 }
443
444 void setTevColorAB(u8 a, u8 b) { field_0x2 = a << 4 | b; }
445 void setTevColorCD(u8 c, u8 d) { field_0x3 = c << 4 | d; }
446
447 void setTevColorOp(u8 op, u8 bias, u8 scale, u8 clamp, u8 reg) {
448 field_0x1 = field_0x1 & ~0x04 | op << 2;
449 if (op <= 1) {
450 field_0x1 = field_0x1 & ~0x30 | scale << 4;
451 field_0x1 = field_0x1 & ~0x03 | bias;
452 } else {
453 field_0x1 = field_0x1 & ~0x30 | (op >> 1 & 3) << 4;
454 field_0x1 = field_0x1 & ~0x03 | 3;
455 }
456 field_0x1 = field_0x1 & ~0x08 | clamp << 3;
457 field_0x1 = field_0x1 & ~0xc0 | reg << 6;
458 }
459
460 void setAlphaABCD(u8 a, u8 b, u8 c, u8 d) {
461 setAlphaA(a);
462 setAlphaB(b);
463 setAlphaC(c);
464 setAlphaD(d);
465 }
466
467 void setAlphaA(u8 a) {
468 field_0x6 = field_0x6 & ~0xe0 | a << 5;
469 }
470 void setAlphaB(u8 b) {
471 field_0x6 = field_0x6 & ~0x1c | b << 2;
472 }
473 void setAlphaC(u8 c) {
474 field_0x6 = field_0x6 & ~0x03 | c >> 1;
475 field_0x7 = field_0x7 & ~0x80 | c << 7;
476 }
477 void setAlphaD(u8 d) {
478 field_0x7 = field_0x7 & ~0x70 | d << 4;
479 }
480 void setTevAlphaOp(u8 op, u8 bias, u8 scale, u8 clamp, u8 reg) {
481 field_0x5 = field_0x5 & ~0x04 | op << 2;
482 if (op <= 1) {
483 field_0x5 = field_0x5 & ~0x03 | bias;
484 field_0x5 = field_0x5 & ~0x30 | scale << 4;
485 } else {
486 field_0x5 = field_0x5 & ~0x30 | (op >> 1 & 3) << 4;
487 field_0x5 = field_0x5 & ~0x03 | 3;
488 }
489 field_0x5 = field_0x5 & ~0x08 | clamp << 3;
490 field_0x5 = field_0x5 & ~0xc0 | reg << 6;
491 }
492
493 u8 getColorA() const { return (field_0x2 & 0xf0) >> 4; }
494 u8 getColorB() const { return field_0x2 & 0x0f; }
495 u8 getColorC() const { return (field_0x3 & 0xf0) >> 4; }
496 u8 getColorD() const { return field_0x3 & 0x0f; }
497 u8 getAlphaA() const { return (field_0x6 & 0xe0) >> 5; }
498 u8 getAlphaB() const { return (field_0x6 & 0x1c) >> 2; }
499 u8 getAlphaC() const { return (field_0x6 & 0x03) << 1 | (field_0x7 & 0x80) >> 7; }
500 u8 getAlphaD() const { return (field_0x7 & 0x70) >> 4; }
501 u8 getCOp() const {
502 if (getCBias() != 3) {
503 return (field_0x1 & 4) >> 2;
504 }
505 return ((field_0x1 & 4) >> 2) + 8 + ((field_0x1 & 0x30) >> 3);
506 }
507 u8 getCBias() const { return field_0x1 & 0x03; }
508 u8 getCScale() const { return (field_0x1 & 0x30) >> 4; }
509 u8 getCClamp() const { return (field_0x1 & 0x08) >> 3; }
510 u8 getCReg() const { return (field_0x1 & 0xc0) >> 6; }
511 u8 getAOp() const {
512 if (getABias() != 3) {
513 return (field_0x5 & 4) >> 2;
514 }
515 return ((field_0x5 & 4) >> 2) + 8 + ((field_0x5 & 0x30) >> 3);
516 }
517 u8 getABias() const { return field_0x5 & 0x03; }
518 u8 getAScale() const { return (field_0x5 & 0x30) >> 4; }
519 u8 getAClamp() const { return (field_0x5 & 0x08) >> 3; }
520 u8 getAReg() const { return (field_0x5 & 0xc0) >> 6; }
521 u8 getRasSel() const { return field_0x7 & 3; }
522 u8 getTexSel() const { return (field_0x7 & 0x0c) >> 2; }
523
524 void operator=(J2DTevStage const& other) {
525 field_0x1 = other.field_0x1;
526 field_0x2 = other.field_0x2;
527 field_0x3 = other.field_0x3;
528 field_0x5 = other.field_0x5;
529 field_0x6 = other.field_0x6;
530 field_0x7 = other.field_0x7;
531 }
532
533private:
534 /* 0x0 */ u8 field_0x0;
535 /* 0x1 */ u8 field_0x1;
536 /* 0x2 */ u8 field_0x2;
537 /* 0x3 */ u8 field_0x3;
538 /* 0x4 */ u8 field_0x4;
539 /* 0x5 */ u8 field_0x5;
540 /* 0x6 */ u8 field_0x6;
541 /* 0x7 */ u8 field_0x7;
542};
543
549 /* 0x0 */ u8 field_0x0;
550 /* 0x1 */ u8 field_0x1;
551 /* 0x2 */ u8 field_0x2;
552 /* 0x3 */ u8 field_0x3;
553
555 field_0x0 = other.field_0x0;
556 field_0x1 = other.field_0x1;
557 field_0x2 = other.field_0x2;
558 field_0x3 = other.field_0x3;
559 return *this;
560 }
561};
562
563inline u8 J2DCalcTevSwapTable(u8 param_0, u8 param_1, u8 param_2, u8 param_3) {
564 return (param_0 << 6) + (param_1 << 4) + (param_2 << 2) + param_3;
565}
566
568extern const u8 j2dDefaultTevSwapTableID;
569
576public:
581 void operator=(const J2DTevSwapModeTable& other) {
582 mIdx = other.mIdx;
583 }
584
588 u8 getR() const { return mIdx >> 6 & 3; }
589 u8 getG() const { return mIdx >> 4 & 3; }
590 u8 getB() const { return mIdx >> 2 & 3; }
591 u8 getA() const { return mIdx & 3; }
592
593private:
594 /* 0x0 */ u8 mIdx;
595};
596
602 /* 0x0 */ u8 field_0x0;
603 /* 0x0 */ u8 field_0x1;
604 /* 0x0 */ u8 field_0x2;
605 /* 0x0 */ u8 field_0x3;
606
608 field_0x0 = other.field_0x0;
609 field_0x1 = other.field_0x1;
610 field_0x2 = other.field_0x2;
611 field_0x3 = other.field_0x3;
612 return *this;
613 }
614};
615
616inline u16 J2DCalcColorChanID(u8 param_0) { return param_0; }
618
624public:
631
635
636 u8 getMatSrc() const { return mColorChan & 1; }
637
638 void operator=(const J2DColorChan& other) {
639 mColorChan = other.mColorChan;
640 }
641
642private:
643 /* 0x0 */ u16 mColorChan;
644};
645
646extern const GXColor j2dDefaultColInfo;
647extern const GXColorS10 j2dDefaultTevColor;
648extern const GXColor j2dDefaultTevKColor;
650extern const u8 j2dDefaultPEBlockDither;
652extern const u16 j2dDefaultAlphaCmp;
653
654#endif /* J2DTEVS_H */
J2DTevStageInfo const j2dDefaultTevStageInfo
Definition J2DTevs.cpp:122
J2DTexCoordInfo const j2dDefaultTexCoordInfo[8]
Definition J2DTevs.cpp:110
const u16 j2dDefaultAlphaCmp
Definition J2DTevs.cpp:166
const u8 j2dDefaultTevSwapTableID
Definition J2DTevs.h:651
J2DIndTexMtxInfo const j2dDefaultIndTexMtxInfo
Definition J2DTevs.cpp:120
const J2DTevSwapModeTableInfo j2dDefaultTevSwapModeTable
Definition J2DTevs.cpp:154
u8 J2DCalcTevSwapTable(u8 param_0, u8 param_1, u8 param_2, u8 param_3)
Definition J2DTevs.h:563
const GXColor j2dDefaultTevKColor
Definition J2DTevs.cpp:150
const J2DIndTevStageInfo j2dDefaultIndTevStageInfo
Definition J2DTevs.cpp:128
u32 J2DCalcIndTevStage(J2DIndTevStageInfo info)
Definition J2DTevs.h:235
const J2DTevSwapModeInfo j2dDefaultTevSwapMode
Definition J2DTevs.cpp:152
J2DTexMtxInfo const j2dDefaultTexMtxInfo
Definition J2DTevs.cpp:117
const u8 j2dDefaultPEBlockDither
Definition J2DTevs.cpp:160
const J2DIndTexOrderInfo j2dDefaultIndTexOrderNull
Definition J2DTevs.cpp:138
const J2DIndTexCoordScaleInfo j2dDefaultIndTexCoordScaleInfo
Definition J2DTevs.cpp:145
const GXColor j2dDefaultColInfo
Definition J2DTevs.cpp:133
u16 J2DCalcColorChanID(u8 param_0)
Definition J2DTevs.h:616
const J2DColorChanInfo j2dDefaultColorChanInfo
Definition J2DTevs.cpp:162
const GXColorS10 j2dDefaultTevColor
Definition J2DTevs.cpp:143
const J2DTevOrderInfo j2dDefaultTevOrderInfoNull
Definition J2DTevs.h:649
Definition J2DTevs.h:623
void operator=(const J2DColorChan &other)
Definition J2DTevs.h:638
void setColorChanInfo(const J2DColorChanInfo &info)
Definition J2DTevs.h:632
u16 mColorChan
Definition J2DTevs.h:643
u8 getMatSrc() const
Definition J2DTevs.h:636
J2DColorChan()
Definition J2DTevs.h:625
J2DColorChan(const J2DColorChanInfo &info)
Definition J2DTevs.h:628
Definition J2DTevs.h:247
u8 getLod() const
Definition J2DTevs.h:269
u8 getMtxSel() const
Definition J2DTevs.h:267
J2DIndTevStage(const J2DIndTevStageInfo &info)
Definition J2DTevs.h:253
u8 getBiasSel() const
Definition J2DTevs.h:264
void setIndTevStageInfo(const J2DIndTevStageInfo &info)
Definition J2DTevs.h:257
u8 getWrapS() const
Definition J2DTevs.h:265
u8 getIndStage() const
Definition J2DTevs.h:262
void load(u8)
Definition J2DTevs.cpp:61
u32 mFlags
Definition J2DTevs.h:260
u8 getPrev() const
Definition J2DTevs.h:268
u8 getIndFormat() const
Definition J2DTevs.h:263
J2DIndTevStage()
Definition J2DTevs.h:250
u8 getWrapT() const
Definition J2DTevs.h:266
u8 getAlphaSel() const
Definition J2DTevs.h:270
Definition J2DTevs.h:183
J2DIndTexCoordScaleInfo mInfo
Definition J2DTevs.h:200
~J2DIndTexCoordScale()
Definition J2DTevs.h:185
J2DIndTexCoordScale()
Definition J2DTevs.h:186
J2DIndTexCoordScale(const J2DIndTexCoordScaleInfo &info)
Definition J2DTevs.h:189
void load(u8)
Definition J2DTevs.cpp:71
J2DIndTexCoordScale & operator=(const J2DIndTexCoordScaleInfo &info)
Definition J2DTevs.h:192
void setIndTexCoordScaleInfo(const J2DIndTexCoordScaleInfo &info)
Definition J2DTevs.h:196
Definition J2DTevs.h:138
J2DIndTexMtx()
Definition J2DTevs.h:141
J2DIndTexMtxInfo mIndTexMtxInfo
Definition J2DTevs.h:157
J2DIndTexMtx & operator=(const J2DIndTexMtxInfo &info)
Definition J2DTevs.h:147
void setIndTexMtxInfo(const J2DIndTexMtxInfo &info)
Definition J2DTevs.h:151
void load(u32)
~J2DIndTexMtx()
Definition J2DTevs.h:140
J2DIndTexMtx(const J2DIndTexMtxInfo &info)
Definition J2DTevs.h:144
void load(u8)
Definition J2DTevs.cpp:66
Definition J2DTevs.h:94
J2DIndTexOrder()
Definition J2DTevs.h:96
J2DIndTexOrder & operator=(const J2DIndTexOrderInfo &info)
Definition J2DTevs.h:102
void setIndTexOrderInfo(const J2DIndTexOrderInfo &info)
Definition J2DTevs.h:106
J2DIndTexOrderInfo mInfo
Definition J2DTevs.h:110
J2DIndTexOrder(const J2DIndTexOrderInfo &info)
Definition J2DTevs.h:99
void load(u8)
Definition J2DTevs.cpp:75
Definition J2DTevs.h:340
u8 getTexCoord() const
Definition J2DTevs.h:353
u8 getTexMap() const
Definition J2DTevs.h:352
J2DTevOrderInfo mTevOrderInfo
Definition J2DTevs.h:355
u8 getColor() const
Definition J2DTevs.h:351
J2DTevOrder(const J2DTevOrderInfo &info)
Definition J2DTevs.h:346
void setTevOrderInfo(const J2DTevOrderInfo &info)
Definition J2DTevs.h:350
J2DTevOrder()
Definition J2DTevs.h:342
Definition J2DTevs.h:404
u8 getABias() const
Definition J2DTevs.h:517
u8 getCScale() const
Definition J2DTevs.h:508
void setTexSel(u8 param_0)
Definition J2DTevs.h:431
void setAlphaB(u8 b)
Definition J2DTevs.h:470
u8 field_0x0
Definition J2DTevs.h:534
u8 getAClamp() const
Definition J2DTevs.h:519
u8 getAOp() const
Definition J2DTevs.h:511
u8 getAlphaA() const
Definition J2DTevs.h:497
u8 getColorA() const
Definition J2DTevs.h:493
u8 getCClamp() const
Definition J2DTevs.h:509
u8 getTexSel() const
Definition J2DTevs.h:522
u8 getColorC() const
Definition J2DTevs.h:495
u8 field_0x1
Definition J2DTevs.h:535
void setTevColorAB(u8 a, u8 b)
Definition J2DTevs.h:444
u8 getAlphaD() const
Definition J2DTevs.h:500
void setTevStageInfo(J2DTevStageInfo const &info)
Definition J2DTevs.h:414
void operator=(J2DTevStage const &other)
Definition J2DTevs.h:524
u8 field_0x5
Definition J2DTevs.h:539
u8 getAlphaB() const
Definition J2DTevs.h:498
u8 getCReg() const
Definition J2DTevs.h:510
void setTevSwapModeInfo(const J2DTevSwapModeInfo &swapInfo)
Definition J2DTevs.h:426
u8 getAlphaC() const
Definition J2DTevs.h:499
u8 getColorB() const
Definition J2DTevs.h:494
void setAlphaABCD(u8 a, u8 b, u8 c, u8 d)
Definition J2DTevs.h:460
u8 getAScale() const
Definition J2DTevs.h:518
J2DTevStage()
Definition J2DTevs.h:410
u8 getColorD() const
Definition J2DTevs.h:496
void setRasSel(u8 param_0)
Definition J2DTevs.h:435
u8 field_0x7
Definition J2DTevs.h:541
void setTevAlphaOp(u8 op, u8 bias, u8 scale, u8 clamp, u8 reg)
Definition J2DTevs.h:480
u8 field_0x4
Definition J2DTevs.h:538
void setTevColorOp(u8 op, u8 bias, u8 scale, u8 clamp, u8 reg)
Definition J2DTevs.h:447
u8 getCOp() const
Definition J2DTevs.h:501
u8 getRasSel() const
Definition J2DTevs.h:521
u8 field_0x2
Definition J2DTevs.h:536
u8 getCBias() const
Definition J2DTevs.h:507
void setAlphaC(u8 c)
Definition J2DTevs.h:473
u8 getAReg() const
Definition J2DTevs.h:520
void setColorABCD(u8 a, u8 b, u8 c, u8 d)
Definition J2DTevs.h:439
J2DTevStage(J2DTevStageInfo const &param_0)
Definition J2DTevs.h:406
u8 field_0x3
Definition J2DTevs.h:537
u8 field_0x6
Definition J2DTevs.h:540
void setAlphaA(u8 a)
Definition J2DTevs.h:467
void setTevColorCD(u8 c, u8 d)
Definition J2DTevs.h:445
void setStageNo(u32 param_0)
Definition J2DTevs.h:421
void setAlphaD(u8 d)
Definition J2DTevs.h:477
Definition J2DTevs.h:575
void setTevSwapModeTableInfo(const J2DTevSwapModeTableInfo &info)
Definition J2DTevs.h:585
u8 mIdx
Definition J2DTevs.h:594
u8 getR() const
Definition J2DTevs.h:588
u8 getG() const
Definition J2DTevs.h:589
J2DTevSwapModeTable(const J2DTevSwapModeTableInfo &info)
Definition J2DTevs.h:578
void operator=(const J2DTevSwapModeTable &other)
Definition J2DTevs.h:581
J2DTevSwapModeTable()
Definition J2DTevs.h:577
u8 getB() const
Definition J2DTevs.h:590
u8 getA() const
Definition J2DTevs.h:591
Definition J2DTevs.h:297
J2DTexCoord()
Definition J2DTevs.h:299
J2DTexCoord(const J2DTexCoordInfo &info)
Definition J2DTevs.h:303
u8 getTexGenMtx() const
Definition J2DTevs.h:310
u8 getTexGenSrc() const
Definition J2DTevs.h:309
void setTexGenMtx(u8 texGenMtx)
Definition J2DTevs.h:307
u8 getTexGenType() const
Definition J2DTevs.h:308
void setTexCoordInfo(const J2DTexCoordInfo &info)
Definition J2DTevs.h:306
J2DTexCoordInfo mTexCoordInfo
Definition J2DTevs.h:313
Definition J2DTevs.h:54
Mtx mTexMtx
Definition J2DTevs.h:68
void getTextureMtxMaya(J2DTextureSRTInfo const &, Mtx)
Definition J2DTevs.cpp:43
J2DTexMtx(const J2DTexMtxInfo &info)
Definition J2DTevs.h:58
void setTexMtxInfo(J2DTexMtxInfo info)
Definition J2DTevs.h:64
J2DTexMtx()
Definition J2DTevs.h:56
void calc()
Definition J2DTevs.cpp:16
J2DTexMtxInfo mInfo
Definition J2DTevs.h:67
void getTextureMtx(J2DTextureSRTInfo const &, Vec, Mtx)
Definition J2DTevs.cpp:25
void load(u32)
Definition J2DTevs.cpp:12
J2DTexMtxInfo & getTexMtxInfo()
Definition J2DTevs.h:63
~J2DTexMtx()
Definition J2DTevs.h:57
Ordon Goat.
enum _GXTexCoordID GXTexCoordID
enum _GXIndTexScale GXIndTexScale
enum _GXTexMapID GXTexMapID
enum _GXTexMtxType GXTexMtxType
u32 clamp
Definition GXTev.c:10
u32 bias
Definition GXTev.c:12
f32 Mtx[3][4]
Definition mtx.h:25
f32 Mtx23[2][3]
Definition mtx.h:36
int i
Definition e_log.c:92
int j
Definition e_log.c:92
signed char s8
Definition types.h:7
unsigned long u32
Definition types.h:12
float f32
Definition types.h:25
unsigned short int u16
Definition types.h:10
unsigned char u8
Definition types.h:8
a
Definition k_cos.c:89
Definition J2DTevs.h:601
u8 field_0x3
Definition J2DTevs.h:605
J2DColorChanInfo & operator=(const J2DColorChanInfo &other)
Definition J2DTevs.h:607
u8 field_0x2
Definition J2DTevs.h:604
u8 field_0x1
Definition J2DTevs.h:603
u8 field_0x0
Definition J2DTevs.h:602
Definition J2DTevs.h:207
u8 field_0x9
Definition J2DTevs.h:217
u8 mMtxSel
Definition J2DTevs.h:211
u8 mIndFormat
Definition J2DTevs.h:209
u8 mWrapT
Definition J2DTevs.h:213
u8 mWrapS
Definition J2DTevs.h:212
u8 mLod
Definition J2DTevs.h:215
J2DIndTevStageInfo & operator=(const J2DIndTevStageInfo &other)
Definition J2DTevs.h:221
u8 field_0xb
Definition J2DTevs.h:219
u8 field_0xa
Definition J2DTevs.h:218
u8 mPrev
Definition J2DTevs.h:214
u8 mBiasSel
Definition J2DTevs.h:210
u8 mIndStage
Definition J2DTevs.h:208
u8 mAlphaSel
Definition J2DTevs.h:216
Definition J2DTevs.h:164
GXIndTexScale getScaleT() const
Definition J2DTevs.h:174
u8 mScaleS
Definition J2DTevs.h:165
J2DIndTexCoordScaleInfo & operator=(const J2DIndTexCoordScaleInfo &other)
Definition J2DTevs.h:168
u8 mScaleT
Definition J2DTevs.h:166
GXIndTexScale getScaleS() const
Definition J2DTevs.h:173
Definition J2DTevs.h:117
s8 mScaleExp
Definition J2DTevs.h:119
J2DIndTexMtxInfo & operator=(const J2DIndTexMtxInfo &other)
Definition J2DTevs.h:121
Mtx23 mMtx
Definition J2DTevs.h:118
Definition J2DTevs.h:75
u8 mTexMapID
Definition J2DTevs.h:77
J2DIndTexOrderInfo & operator=(const J2DIndTexOrderInfo &other)
Definition J2DTevs.h:79
GXTexCoordID getTexCoordID() const
Definition J2DTevs.h:84
u8 mTexCoordID
Definition J2DTevs.h:76
GXTexMapID getTexMapID() const
Definition J2DTevs.h:85
Definition J2DTevs.h:320
u8 field_0x3
Definition J2DTevs.h:324
u8 mTexCoord
Definition J2DTevs.h:321
J2DTevOrderInfo & operator=(const J2DTevOrderInfo &other)
Definition J2DTevs.h:326
u8 mTexMap
Definition J2DTevs.h:322
u8 mColor
Definition J2DTevs.h:323
Definition J2DTevs.h:362
u8 mCOp
Definition J2DTevs.h:368
u8 mColorB
Definition J2DTevs.h:365
u8 mAClamp
Definition J2DTevs.h:380
u8 mABias
Definition J2DTevs.h:378
u8 mAlphaD
Definition J2DTevs.h:376
u8 field_0x0
Definition J2DTevs.h:363
u8 mCBias
Definition J2DTevs.h:369
u8 mColorD
Definition J2DTevs.h:367
u8 mColorC
Definition J2DTevs.h:366
u8 field_0x13
Definition J2DTevs.h:382
u8 mAlphaA
Definition J2DTevs.h:373
u8 mAOp
Definition J2DTevs.h:377
u8 mCReg
Definition J2DTevs.h:372
u8 mColorA
Definition J2DTevs.h:364
u8 mCClamp
Definition J2DTevs.h:371
u8 mAlphaB
Definition J2DTevs.h:374
u8 mCScale
Definition J2DTevs.h:370
u8 mAlphaC
Definition J2DTevs.h:375
u8 mAScale
Definition J2DTevs.h:379
u8 mAReg
Definition J2DTevs.h:381
Definition J2DTevs.h:391
u8 field_0x3
Definition J2DTevs.h:395
u8 mRasSel
Definition J2DTevs.h:392
u8 field_0x2
Definition J2DTevs.h:394
u8 mTexSel
Definition J2DTevs.h:393
Definition J2DTevs.h:548
u8 field_0x1
Definition J2DTevs.h:550
u8 field_0x2
Definition J2DTevs.h:551
u8 field_0x0
Definition J2DTevs.h:549
J2DTevSwapModeTableInfo & operator=(const J2DTevSwapModeTableInfo &other)
Definition J2DTevs.h:554
u8 field_0x3
Definition J2DTevs.h:552
Definition J2DTevs.h:277
u8 mTexGenMtx
Definition J2DTevs.h:280
u8 mTexGenSrc
Definition J2DTevs.h:279
J2DTexCoordInfo & operator=(const J2DTexCoordInfo &other)
Definition J2DTevs.h:283
u8 padding
Definition J2DTevs.h:281
u8 mTexGenType
Definition J2DTevs.h:278
Definition J2DTevs.h:24
GXTexMtxType getTexMtxType() const
Definition J2DTevs.h:37
u8 mTexMtxDCC
Definition J2DTevs.h:31
u8 field_0x3
Definition J2DTevs.h:33
J2DTexMtxInfo & operator=(const J2DTexMtxInfo &other)
Definition J2DTevs.h:38
J2DTextureSRTInfo mTexSRTInfo
Definition J2DTevs.h:35
u8 mTexMtxType
Definition J2DTevs.h:30
Vec mCenter
Definition J2DTevs.h:34
u8 field_0x2
Definition J2DTevs.h:32
@ DCC_MAYA
Definition J2DTevs.h:27
@ DCC_NONE
Definition J2DTevs.h:26
Definition J2DTevs.h:12
f32 mRotationDeg
Definition J2DTevs.h:15
f32 mTranslationY
Definition J2DTevs.h:17
f32 mScaleX
Definition J2DTevs.h:13
f32 mTranslationX
Definition J2DTevs.h:16
f32 mScaleY
Definition J2DTevs.h:14
Definition mtx.h:13
Definition GXStruct.h:34
Definition GXStruct.h:30