Revision 7e8b9852
Added by Leszek Koltunski over 5 years ago
| src/main/java/org/distorted/objects/RubikCube.java | ||
|---|---|---|
| 150 | 150 | int association = 1; | 
| 151 | 151 | MeshBase[] meshes = new MeshRectangles[MESHES]; | 
| 152 | 152 | meshes[0] = new MeshRectangles(14,14); | 
| 153 | meshes[0].setEffectAssociation(0,association); | |
| 153 |       meshes[0].setEffectAssociation(0,association,0);
 | |
| 154 | 154 |  | 
| 155 | 155 | for(int i=1; i<MESHES; i++) | 
| 156 | 156 |         {
 | 
| 157 | 157 | association <<=1; | 
| 158 | 158 | meshes[i] = meshes[0].copy(true); | 
| 159 | meshes[i].setEffectAssociation(0,association); | |
| 159 |         meshes[i].setEffectAssociation(0,association,0);
 | |
| 160 | 160 | } | 
| 161 | 161 |  | 
| 162 | 162 | mMesh = new MeshJoined(meshes); | 
| ... | ... | |
| 194 | 194 | Static1D dRad = new Static1D(1); | 
| 195 | 195 |  | 
| 196 | 196 | VertexEffectMove effect0 = new VertexEffectMove(new Static3D(0,0,+0.5f)); | 
| 197 |       effect0.setMeshAssociation(-1,63);  // all 6 sides
 | |
| 197 |       effect0.setMeshAssociation(63,-1);  // all 6 sides
 | |
| 198 | 198 | VertexEffectRotate effect1 = new VertexEffectRotate( angle180, axisX, center ); | 
| 199 |       effect1.setMeshAssociation(-1,32);  // back
 | |
| 199 |       effect1.setMeshAssociation(32,-1);  // back
 | |
| 200 | 200 | VertexEffectRotate effect2 = new VertexEffectRotate( angle90 , axisX, center ); | 
| 201 |       effect2.setMeshAssociation(-1, 8);  // bottom
 | |
| 201 |       effect2.setMeshAssociation( 8,-1);  // bottom
 | |
| 202 | 202 | VertexEffectRotate effect3 = new VertexEffectRotate( angle270, axisX, center ); | 
| 203 |       effect3.setMeshAssociation(-1, 4);  // top
 | |
| 203 |       effect3.setMeshAssociation( 4,-1);  // top
 | |
| 204 | 204 | VertexEffectRotate effect4 = new VertexEffectRotate( angle270, axisY, center ); | 
| 205 |       effect4.setMeshAssociation(-1, 2);  // left
 | |
| 205 |       effect4.setMeshAssociation( 2,-1);  // left
 | |
| 206 | 206 | VertexEffectRotate effect5 = new VertexEffectRotate( angle90 , axisY, center ); | 
| 207 |       effect5.setMeshAssociation(-1, 1);  // right
 | |
| 207 |       effect5.setMeshAssociation( 1,-1);  // right
 | |
| 208 | 208 |  | 
| 209 | 209 | VertexEffectDeform effect6 = new VertexEffectDeform(dVec0, dRad, dCen0, dReg); | 
| 210 | 210 | VertexEffectDeform effect7 = new VertexEffectDeform(dVec1, dRad, dCen1, dReg); | 
| src/main/java/org/distorted/objects/RubikObject.java | ||
|---|---|---|
| 147 | 147 | } | 
| 148 | 148 | } | 
| 149 | 149 |  | 
| 150 | mesh.setTextureMap(maps); | |
| 150 |     mesh.setTextureMap(maps,0);
 | |
| 151 | 151 | } | 
| 152 | 152 |  | 
| 153 | 153 | /////////////////////////////////////////////////////////////////////////////////////////////////// | 
| ... | ... | |
| 415 | 415 | try | 
| 416 | 416 |       {
 | 
| 417 | 417 | maps[face] = new Static4D( newColor*ratio, 0.0f, ratio, 1.0f); | 
| 418 | mCubits[cubit].getMesh().setTextureMap(maps); | |
| 418 |       mCubits[cubit].getMesh().setTextureMap(maps,0);
 | |
| 419 | 419 | } | 
| 420 | 420 | catch(ArrayIndexOutOfBoundsException ignored) | 
| 421 | 421 |       {
 | 
| src/main/java/org/distorted/objects/RubikPyraminx.java | ||
|---|---|---|
| 216 | 216 | MeshBase[] meshes = new MeshTriangles[MESHES]; | 
| 217 | 217 |  | 
| 218 | 218 | meshes[0] = new MeshTriangles(5); | 
| 219 | meshes[0].setEffectAssociation(0,association); | |
| 219 |     meshes[0].setEffectAssociation(0,association,0);
 | |
| 220 | 220 |  | 
| 221 | 221 | for(int i=1; i<MESHES; i++) | 
| 222 | 222 |       {
 | 
| 223 | 223 | association <<= 1; | 
| 224 | 224 | meshes[i] = meshes[0].copy(true); | 
| 225 | meshes[i].setEffectAssociation(0,association); | |
| 225 |       meshes[i].setEffectAssociation(0,association,0);
 | |
| 226 | 226 | } | 
| 227 | 227 |  | 
| 228 | Static4D[] textureMaps = new Static4D[MESHES]; | |
| 229 | for(int i=0; i<MESHES; i++) textureMaps[i] = new Static4D(i*0.25f,0.0f,0.25f,1.0f); | |
| 230 | 228 | MeshBase result = new MeshJoined(meshes); | 
| 231 | result.setTextureMap(textureMaps); | |
| 232 | 229 |  | 
| 233 | 230 | Static3D a0 = new Static3D( 0, 1, 0 ); | 
| 234 | 231 | Static3D a1 = new Static3D( 0, -1.0f/3, 2*SQ2/3 ); | 
| ... | ... | |
| 263 | 260 | Static3D center = new Static3D(0,0,0); | 
| 264 | 261 | Static4D region = new Static4D(0,0,0,0.6f); | 
| 265 | 262 |  | 
| 266 | VertexEffectScale effect1 = new VertexEffectScale ( new Static3D(1,SQ3/2,1) ); | |
| 267 |     VertexEffectRotate  effect2 = new VertexEffectRotate( new Static1D(90), new Static3D(1,0,0), new Static3D(0,0,0) );
 | |
| 268 | VertexEffectMove effect3 = new VertexEffectMove ( new Static3D(0,-SQ3*SQ2/12,SQ3/12) ); | |
| 269 |     VertexEffectRotate  effect4 = new VertexEffectRotate( new Static1D(180), new Static3D(0,0,1), center1 );
 | |
| 270 |     VertexEffectRotate  effect5 = new VertexEffectRotate( angle, axis1, center1 );
 | |
| 271 |     VertexEffectRotate  effect6 = new VertexEffectRotate( angle, axis2, center2 );
 | |
| 272 |     VertexEffectRotate  effect7 = new VertexEffectRotate( angle, axis3, center2 );
 | |
| 263 |     VertexEffectScale  effect1 = new VertexEffectScale ( new Static3D(1,SQ3/2,1) );
 | |
| 264 | VertexEffectRotate effect2 = new VertexEffectRotate( new Static1D(90), new Static3D(1,0,0), new Static3D(0,0,0) ); | |
| 265 |     VertexEffectMove   effect3 = new VertexEffectMove  ( new Static3D(0,-SQ3*SQ2/12,SQ3/12) );
 | |
| 266 | VertexEffectRotate effect4 = new VertexEffectRotate( new Static1D(180), new Static3D(0,0,1), center1 ); | |
| 267 | VertexEffectRotate effect5 = new VertexEffectRotate( angle, axis1, center1 ); | |
| 268 | VertexEffectRotate effect6 = new VertexEffectRotate( angle, axis2, center2 ); | |
| 269 | VertexEffectRotate effect7 = new VertexEffectRotate( angle, axis3, center2 ); | |
| 273 | 270 |  | 
| 274 | 271 | VertexEffectDeform effect8 = new VertexEffectDeform(dVec0, dRad, dCen0, dReg); | 
| 275 | 272 | VertexEffectDeform effect9 = new VertexEffectDeform(dVec1, dRad, dCen1, dReg); | 
| ... | ... | |
| 278 | 275 |  | 
| 279 | 276 | VertexEffectSink effect12= new VertexEffectSink( new Static1D(1.3f), center, region ); | 
| 280 | 277 |  | 
| 281 |     effect4.setMeshAssociation(-1,14);  // apply to mesh[1], [2] and [3]
 | |
| 282 |     effect5.setMeshAssociation(-1, 2);  // apply only to mesh[1]
 | |
| 283 |     effect6.setMeshAssociation(-1, 4);  // apply only to mesh[2]
 | |
| 284 |     effect7.setMeshAssociation(-1, 8);  // apply only to mesh[3]
 | |
| 278 |     effect4.setMeshAssociation(14,-1);  // apply to mesh[1], [2] and [3]
 | |
| 279 |     effect5.setMeshAssociation( 2,-1);  // apply only to mesh[1]
 | |
| 280 |     effect6.setMeshAssociation( 4,-1);  // apply only to mesh[2]
 | |
| 281 |     effect7.setMeshAssociation( 8,-1);  // apply only to mesh[3]
 | |
| 285 | 282 |  | 
| 286 | 283 | result.apply(effect1); | 
| 287 | 284 | result.apply(effect2); | 
Also available in: Unified diff
Correct RubikCube for the new library.