Rev 1774 | Rev 1780 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 1720 | chris | 1 | package com.gebauz.bauzoid2.graphics.model; |
| 2 | |||
| 1723 | chris | 3 | import com.gebauz.bauzoid2.game.Engine; |
| 1778 | chris | 4 | import com.gebauz.bauzoid2.graphics.util.Transform; |
| 1723 | chris | 5 | import com.gebauz.bauzoid2.math.Matrix4; |
| 1774 | chris | 6 | import com.gebauz.bauzoid2.math.Quaternion; |
| 7 | import com.gebauz.bauzoid2.math.Vector3; |
||
| 1767 | chris | 8 | import com.gebauz.bauzoid2.math.Vector4; |
| 1723 | chris | 9 | |
| 1720 | chris | 10 | /** |
| 11 | * Created by chris on 14.12.2014. |
||
| 12 | */ |
||
| 13 | public class ModelNode |
||
| 14 | { |
||
| 15 | // Constants======================================================================================== |
||
| 16 | |||
| 17 | // Embedded Types=================================================================================== |
||
| 18 | |||
| 19 | // Fields=========================================================================================== |
||
| 20 | |||
| 21 | private String mName = null; |
||
| 22 | |||
| 1751 | chris | 23 | private int mParentIndex = -1; |
| 24 | |||
| 1720 | chris | 25 | public ModelPart[] parts = null; |
| 26 | |||
| 1751 | chris | 27 | private Matrix4 mGlobalTransform = Matrix4.createIdentity(); |
| 1774 | chris | 28 | //private Matrix4 mLocalTransform = Matrix4.createIdentity(); |
| 1723 | chris | 29 | |
| 1778 | chris | 30 | public Transform transform = new Transform(); |
| 1774 | chris | 31 | |
| 1720 | chris | 32 | // Methods========================================================================================== |
| 33 | |||
| 1751 | chris | 34 | public ModelNode(String name, int parentIndex) |
| 1720 | chris | 35 | { |
| 36 | mName = name; |
||
| 1751 | chris | 37 | mParentIndex = parentIndex; |
| 1720 | chris | 38 | } |
| 39 | |||
| 1767 | chris | 40 | /* |
| 1720 | chris | 41 | public void render() |
| 42 | { |
||
| 1723 | chris | 43 | Engine.graphics.renderStates.pushModelMatrix(); |
| 1751 | chris | 44 | Engine.graphics.renderStates.model.preMultiply(mLocalTransform); |
| 1723 | chris | 45 | |
| 1739 | chris | 46 | //Engine.graphics.getPrimitiveShader().activate(new Vector4(0, 0, 1, 1)); |
| 1723 | chris | 47 | |
| 1720 | chris | 48 | if (parts != null) |
| 49 | { |
||
| 50 | for (ModelPart part : parts) |
||
| 51 | { |
||
| 52 | part.render(); |
||
| 53 | } |
||
| 54 | } |
||
| 1723 | chris | 55 | |
| 1739 | chris | 56 | //Engine.graphics.getPrimitiveShader().deactivate(); |
| 1723 | chris | 57 | |
| 58 | Engine.graphics.renderStates.popModelMatrix(); |
||
| 1767 | chris | 59 | }*/ |
| 1720 | chris | 60 | |
| 1778 | chris | 61 | /*public Matrix4 calcLocalTransform() |
| 1774 | chris | 62 | { |
| 63 | Matrix4 local = Matrix4.createIdentity(); |
||
| 64 | if (mScale != null) |
||
| 65 | local.multiply(Matrix4.createScale(mScale)); |
||
| 66 | if (mRotation != null) |
||
| 67 | local.multiply(mRotation.toMatrix()); |
||
| 68 | if (mTranslation != null) |
||
| 69 | local.multiply(Matrix4.createTranslation(mTranslation)); |
||
| 70 | return local; |
||
| 1778 | chris | 71 | }*/ |
| 1774 | chris | 72 | |
| 1720 | chris | 73 | // Getters/Setters================================================================================== |
| 74 | |||
| 75 | public final String getName() { return mName; } |
||
| 76 | |||
| 1774 | chris | 77 | /*public final Matrix4 getLocalTransform() { return mLocalTransform; } |
| 78 | public final void setLocalTransform(Matrix4 transform) { mLocalTransform = transform; }*/ |
||
| 1778 | chris | 79 | /*public final Vector3 getTranslation() { return mTranslation; } |
| 1774 | chris | 80 | public final void setTranslation(Vector3 v) { mTranslation = v; } |
| 1751 | chris | 81 | |
| 1774 | chris | 82 | public final Quaternion getRotation() { return mRotation; } |
| 83 | public final void setRotation(Quaternion q) { mRotation = q; } |
||
| 84 | |||
| 85 | public final Vector3 getScale() { return mScale; } |
||
| 1778 | chris | 86 | public final void setScale(Vector3 v) { mScale = v; }*/ |
| 1774 | chris | 87 | |
| 1752 | chris | 88 | public final Matrix4 getGlobalTransform() { return mGlobalTransform; } |
| 89 | public final void setGlobalTransform(Matrix4 transform) { mGlobalTransform = transform; } |
||
| 90 | |||
| 1751 | chris | 91 | public final int getParentIndex() { return mParentIndex; } |
| 1720 | chris | 92 | } |