Java Code Examples for com.jme3.scene.Geometry#setLocalScale()
The following examples show how to use
com.jme3.scene.Geometry#setLocalScale() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: TestCollisionShapeFactory.java From jmonkeyengine with BSD 3-Clause "New" or "Revised" License | 6 votes |
private void attachRandomGeometry(Node node, Material mat) { Box box = new Box(0.25f, 0.25f, 0.25f); Torus torus = new Torus(16, 16, 0.2f, 0.8f); Geometry[] boxes = new Geometry[]{ new Geometry("box1", box), new Geometry("box2", box), new Geometry("box3", box), new Geometry("torus1", torus), new Geometry("torus2", torus), new Geometry("torus3", torus) }; for (int i = 0; i < boxes.length; i++) { Geometry geometry = boxes[i]; geometry.setLocalTranslation((float) Math.random() * 10 -10, (float) Math.random() * 10 -10, (float) Math.random() * 10 -10); geometry.setLocalRotation(new Quaternion().fromAngles((float) Math.random() * FastMath.PI, (float) Math.random() * FastMath.PI, (float) Math.random() * FastMath.PI)); geometry.setLocalScale((float) Math.random() * 10 -10, (float) Math.random() * 10 -10, (float) Math.random() * 10 -10); geometry.setMaterial(mat); node.attachChild(geometry); } }
Example 2
Source File: TestOnlineJar.java From MikuMikuStudio with BSD 2-Clause "Simplified" License | 6 votes |
@Override public void simpleInitApp() { // create a simple plane/quad Quad quadMesh = new Quad(1, 1); quadMesh.updateGeometry(1, 1, true); Geometry quad = new Geometry("Textured Quad", quadMesh); assetManager.registerLocator("http://jmonkeyengine.googlecode.com/files/town.zip", HttpZipLocator.class); TextureKey key = new TextureKey("grass.jpg", false); key.setGenerateMips(true); Texture tex = assetManager.loadTexture(key); Material mat = new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md"); mat.setTexture("ColorMap", tex); quad.setMaterial(mat); float aspect = tex.getImage().getWidth() / (float) tex.getImage().getHeight(); quad.setLocalScale(new Vector3f(aspect * 1.5f, 1.5f, 1)); quad.center(); rootNode.attachChild(quad); }
Example 3
Source File: TestTriangleStrip.java From MikuMikuStudio with BSD 2-Clause "Simplified" License | 6 votes |
public void simpleInitApp() { Geometry teaGeom = (Geometry) assetManager.loadModel("Models/Teapot/Teapot.obj"); Mesh teaMesh = teaGeom.getMesh(); ModelConverter.generateStrips(teaMesh, true, false, 24, 0); // show normals as material Material mat = new Material(assetManager, "Common/MatDefs/Misc/ShowNormals.j3md"); for (int y = -10; y < 10; y++){ for (int x = -10; x < 10; x++){ Geometry teaClone = new Geometry("teapot", teaMesh); teaClone.setMaterial(mat); teaClone.setLocalTranslation(x * .5f, 0, y * .5f); teaClone.setLocalScale(.5f); rootNode.attachChild(teaClone); } } cam.setLocation(new Vector3f(8.378951f, 5.4324f, 8.795956f)); cam.setRotation(new Quaternion(-0.083419204f, 0.90370524f, -0.20599906f, -0.36595422f)); }
Example 4
Source File: TestCollisionShapeFactory.java From MikuMikuStudio with BSD 2-Clause "Simplified" License | 6 votes |
private void attachRandomGeometry(Node node, Material mat) { Box box = new Box(0.25f, 0.25f, 0.25f); Torus torus = new Torus(16, 16, 0.2f, 0.8f); Geometry[] boxes = new Geometry[]{ new Geometry("box1", box), new Geometry("box2", box), new Geometry("box3", box), new Geometry("torus1", torus), new Geometry("torus2", torus), new Geometry("torus3", torus) }; for (int i = 0; i < boxes.length; i++) { Geometry geometry = boxes[i]; geometry.setLocalTranslation((float) Math.random() * 10 -10, (float) Math.random() * 10 -10, (float) Math.random() * 10 -10); geometry.setLocalRotation(new Quaternion().fromAngles((float) Math.random() * FastMath.PI, (float) Math.random() * FastMath.PI, (float) Math.random() * FastMath.PI)); geometry.setLocalScale((float) Math.random() * 10 -10, (float) Math.random() * 10 -10, (float) Math.random() * 10 -10); geometry.setMaterial(mat); node.attachChild(geometry); } }
Example 5
Source File: TestUrlLoading.java From jmonkeyengine with BSD 3-Clause "New" or "Revised" License | 6 votes |
@Override public void simpleInitApp() { // create a simple plane/quad Quad quadMesh = new Quad(1, 1); quadMesh.updateGeometry(1, 1, true); Geometry quad = new Geometry("Textured Quad", quadMesh); assetManager.registerLocator("https://raw.githubusercontent.com/jMonkeyEngine/BookSamples/master/assets/Textures/", UrlLocator.class); TextureKey key = new TextureKey("mucha-window.png", false); key.setGenerateMips(true); Texture tex = assetManager.loadTexture(key); Material mat = new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md"); mat.setTexture("ColorMap", tex); quad.setMaterial(mat); float aspect = tex.getImage().getWidth() / (float) tex.getImage().getHeight(); quad.setLocalScale(new Vector3f(aspect * 1.5f, 1.5f, 1)); quad.center(); rootNode.attachChild(quad); }
Example 6
Source File: EditorPresentableNode.java From jmonkeybuilder with Apache License 2.0 | 6 votes |
/** * Update position and rotation of a model. */ @JmeThread public void updateModel() { final ScenePresentable object = getObject(); final Geometry model = getModel(); if (model == null || object == null) return; // TODO implement getting parent /*final Node parent = object.getParent(); if (parent != null) { setLocalTranslation(parent.getWorldTranslation()); setLocalRotation(parent.getWorldRotation()); setLocalScale(parent.getWorldScale()); }*/ final Node editedNode = getEditedNode(); model.setLocalTranslation(editedNode.getWorldTranslation()); model.setLocalRotation(editedNode.getWorldRotation()); model.setLocalScale(editedNode.getWorldScale()); }
Example 7
Source File: TestUrlLoading.java From MikuMikuStudio with BSD 2-Clause "Simplified" License | 6 votes |
@Override public void simpleInitApp() { // create a simple plane/quad Quad quadMesh = new Quad(1, 1); quadMesh.updateGeometry(1, 1, true); Geometry quad = new Geometry("Textured Quad", quadMesh); assetManager.registerLocator("http://www.jmonkeyengine.com/wp-content/uploads/2010/09/", UrlLocator.class); TextureKey key = new TextureKey("planet-2.jpg", false); key.setGenerateMips(true); Texture tex = assetManager.loadTexture(key); Material mat = new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md"); mat.setTexture("ColorMap", tex); quad.setMaterial(mat); float aspect = tex.getImage().getWidth() / (float) tex.getImage().getHeight(); quad.setLocalScale(new Vector3f(aspect * 1.5f, 1.5f, 1)); quad.center(); rootNode.attachChild(quad); }
Example 8
Source File: TestSpotLight.java From jmonkeyengine with BSD 3-Clause "New" or "Revised" License | 5 votes |
public void setupLighting(){ AmbientLight al=new AmbientLight(); al.setColor(ColorRGBA.White.mult(0.02f)); rootNode.addLight(al); spot=new SpotLight(); spot.setSpotRange(1000); spot.setSpotInnerAngle(5*FastMath.DEG_TO_RAD); spot.setSpotOuterAngle(10*FastMath.DEG_TO_RAD); spot.setPosition(new Vector3f(77.70334f, 34.013165f, 27.1017f)); spot.setDirection(lightTarget.subtract(spot.getPosition())); spot.setColor(ColorRGBA.White.mult(2)); rootNode.addLight(spot); // PointLight pl=new PointLight(); // pl.setPosition(new Vector3f(77.70334f, 34.013165f, 27.1017f)); // pl.setRadius(1000); // pl.setColor(ColorRGBA.White.mult(2)); // rootNode.addLight(pl); lightMdl = new Geometry("Light", new Sphere(10, 10, 0.1f)); lightMdl.setMaterial(assetManager.loadMaterial("Common/Materials/RedColor.j3m")); lightMdl.setLocalTranslation(new Vector3f(77.70334f, 34.013165f, 27.1017f)); lightMdl.setLocalScale(5); rootNode.attachChild(lightMdl); // DirectionalLight dl = new DirectionalLight(); // dl.setDirection(lightTarget.subtract(new Vector3f(77.70334f, 34.013165f, 27.1017f))); // dl.setColor(ColorRGBA.White.mult(2)); // rootNode.addLight(dl); }
Example 9
Source File: TestLodStress.java From jmonkeyengine with BSD 3-Clause "New" or "Revised" License | 5 votes |
@Override public void simpleInitApp() { DirectionalLight dl = new DirectionalLight(); dl.setDirection(new Vector3f(-1,-1,-1).normalizeLocal()); rootNode.addLight(dl); Node teapotNode = (Node) assetManager.loadModel("Models/Teapot/Teapot.mesh.xml"); Geometry teapot = (Geometry) teapotNode.getChild(0); // Sphere sph = new Sphere(16, 16, 4); // Geometry teapot = new Geometry("teapot", sph); Material mat = new Material(assetManager, "Common/MatDefs/Light/Lighting.j3md"); mat.setFloat("Shininess", 16f); mat.setBoolean("VertexLighting", true); teapot.setMaterial(mat); // show normals as material //Material mat = new Material(assetManager, "Common/MatDefs/Misc/ShowNormals.j3md"); for (int y = -10; y < 10; y++){ for (int x = -10; x < 10; x++){ Geometry clonePot = teapot.clone(); //clonePot.setMaterial(mat); clonePot.setLocalTranslation(x * .5f, 0, y * .5f); clonePot.setLocalScale(.15f); LodControl control = new LodControl(); clonePot.addControl(control); rootNode.attachChild(clonePot); } } cam.setLocation(new Vector3f(8.378951f, 5.4324f, 8.795956f)); cam.setRotation(new Quaternion(-0.083419204f, 0.90370524f, -0.20599906f, -0.36595422f)); }
Example 10
Source File: TestBatchLod.java From jmonkeyengine with BSD 3-Clause "New" or "Revised" License | 5 votes |
@Override public void simpleInitApp() { // inputManager.registerKeyBinding("USELOD", KeyInput.KEY_L); DirectionalLight dl = new DirectionalLight(); dl.setDirection(new Vector3f(-1, -1, -1).normalizeLocal()); rootNode.addLight(dl); Node teapotNode = (Node) assetManager.loadModel("Models/Teapot/Teapot.mesh.xml"); Geometry teapot = (Geometry) teapotNode.getChild(0); Material mat = new Material(assetManager, "Common/MatDefs/Light/Lighting.j3md"); mat.setFloat("Shininess", 16f); mat.setBoolean("VertexLighting", true); teapot.setMaterial(mat); // show normals as material //Material mat = new Material(assetManager, "Common/MatDefs/Misc/ShowNormals.j3md"); flyCam.setMoveSpeed(5); for (int y = -5; y < 5; y++) { for (int x = -5; x < 5; x++) { Geometry clonePot = teapot.clone(); //clonePot.setMaterial(mat); clonePot.setLocalTranslation(x * .5f, 0, y * .5f); clonePot.setLocalScale(.15f); clonePot.setMaterial(mat); rootNode.attachChild(clonePot); } } GeometryBatchFactory.optimize(rootNode, true); LodControl control = new LodControl(); rootNode.getChild(0).addControl(control); cam.setLocation(new Vector3f(-1.0748308f, 1.35778f, -1.5380064f)); cam.setRotation(new Quaternion(0.18343268f, 0.34531063f, -0.069015436f, 0.9177962f)); }
Example 11
Source File: Octnode.java From MikuMikuStudio with BSD 2-Clause "Simplified" License | 5 votes |
public void renderBounds(RenderQueue rq, Matrix4f transform, WireBox box, Material mat){ int numChilds = 0; for (int i = 0; i < 8; i++){ if (children[i] != null){ numChilds ++; break; } } if (geoms != null && numChilds == 0){ BoundingBox bbox2 = new BoundingBox(bbox); bbox.transform(transform, bbox2); // WireBox box = new WireBox(bbox2.getXExtent(), bbox2.getYExtent(), // bbox2.getZExtent()); // WireBox box = new WireBox(1,1,1); Geometry geom = new Geometry("bound", box); geom.setLocalTranslation(bbox2.getCenter()); geom.setLocalScale(bbox2.getXExtent(), bbox2.getYExtent(), bbox2.getZExtent()); geom.updateGeometricState(); geom.setMaterial(mat); rq.addToQueue(geom, Bucket.Opaque); box = null; geom = null; } for (int i = 0; i < 8; i++){ if (children[i] != null){ children[i].renderBounds(rq, transform, box, mat); } } }
Example 12
Source File: TestBatchLod.java From MikuMikuStudio with BSD 2-Clause "Simplified" License | 5 votes |
public void simpleInitApp() { // inputManager.registerKeyBinding("USELOD", KeyInput.KEY_L); DirectionalLight dl = new DirectionalLight(); dl.setDirection(new Vector3f(-1, -1, -1).normalizeLocal()); rootNode.addLight(dl); Node teapotNode = (Node) assetManager.loadModel("Models/Teapot/Teapot.mesh.xml"); Geometry teapot = (Geometry) teapotNode.getChild(0); Material mat = new Material(assetManager, "Common/MatDefs/Light/Lighting.j3md"); mat.setFloat("Shininess", 16f); mat.setBoolean("VertexLighting", true); teapot.setMaterial(mat); // show normals as material //Material mat = new Material(assetManager, "Common/MatDefs/Misc/ShowNormals.j3md"); flyCam.setMoveSpeed(5); for (int y = -5; y < 5; y++) { for (int x = -5; x < 5; x++) { Geometry clonePot = teapot.clone(); //clonePot.setMaterial(mat); clonePot.setLocalTranslation(x * .5f, 0, y * .5f); clonePot.setLocalScale(.15f); clonePot.setMaterial(mat); rootNode.attachChild(clonePot); } } GeometryBatchFactory.optimize(rootNode, true); LodControl control = new LodControl(); rootNode.getChild(0).addControl(control); cam.setLocation(new Vector3f(-1.0748308f, 1.35778f, -1.5380064f)); cam.setRotation(new Quaternion(0.18343268f, 0.34531063f, -0.069015436f, 0.9177962f)); }
Example 13
Source File: TestLodStress.java From MikuMikuStudio with BSD 2-Clause "Simplified" License | 5 votes |
public void simpleInitApp() { DirectionalLight dl = new DirectionalLight(); dl.setDirection(new Vector3f(-1,-1,-1).normalizeLocal()); rootNode.addLight(dl); Node teapotNode = (Node) assetManager.loadModel("Models/Teapot/Teapot.mesh.xml"); Geometry teapot = (Geometry) teapotNode.getChild(0); // Sphere sph = new Sphere(16, 16, 4); // Geometry teapot = new Geometry("teapot", sph); Material mat = new Material(assetManager, "Common/MatDefs/Light/Lighting.j3md"); mat.setFloat("Shininess", 16f); mat.setBoolean("VertexLighting", true); teapot.setMaterial(mat); // show normals as material //Material mat = new Material(assetManager, "Common/MatDefs/Misc/ShowNormals.j3md"); for (int y = -10; y < 10; y++){ for (int x = -10; x < 10; x++){ Geometry clonePot = teapot.clone(); //clonePot.setMaterial(mat); clonePot.setLocalTranslation(x * .5f, 0, y * .5f); clonePot.setLocalScale(.15f); LodControl control = new LodControl(); clonePot.addControl(control); rootNode.attachChild(clonePot); } } cam.setLocation(new Vector3f(8.378951f, 5.4324f, 8.795956f)); cam.setRotation(new Quaternion(-0.083419204f, 0.90370524f, -0.20599906f, -0.36595422f)); }
Example 14
Source File: TestSpotLight.java From MikuMikuStudio with BSD 2-Clause "Simplified" License | 5 votes |
public void setupLighting(){ AmbientLight al=new AmbientLight(); al.setColor(ColorRGBA.White.mult(0.8f)); rootNode.addLight(al); spot=new SpotLight(); spot.setSpotRange(1000); spot.setSpotInnerAngle(5*FastMath.DEG_TO_RAD); spot.setSpotOuterAngle(10*FastMath.DEG_TO_RAD); spot.setPosition(new Vector3f(77.70334f, 34.013165f, 27.1017f)); spot.setDirection(lightTarget.subtract(spot.getPosition())); spot.setColor(ColorRGBA.White.mult(2)); rootNode.addLight(spot); // PointLight pl=new PointLight(); // pl.setPosition(new Vector3f(77.70334f, 34.013165f, 27.1017f)); // pl.setRadius(1000); // pl.setColor(ColorRGBA.White.mult(2)); // rootNode.addLight(pl); lightMdl = new Geometry("Light", new Sphere(10, 10, 0.1f)); lightMdl.setMaterial(assetManager.loadMaterial("Common/Materials/RedColor.j3m")); lightMdl.setLocalTranslation(new Vector3f(77.70334f, 34.013165f, 27.1017f)); lightMdl.setLocalScale(5); rootNode.attachChild(lightMdl); // DirectionalLight dl = new DirectionalLight(); // dl.setDirection(lightTarget.subtract(new Vector3f(77.70334f, 34.013165f, 27.1017f))); // dl.setColor(ColorRGBA.White.mult(2)); // rootNode.addLight(dl); }
Example 15
Source File: TestShaderNodesStress.java From jmonkeyengine with BSD 3-Clause "New" or "Revised" License | 5 votes |
@Override public void simpleInitApp() { Quad q = new Quad(1, 1); Geometry g = new Geometry("quad", q); g.setLocalTranslation(-500, -500, 0); g.setLocalScale(1000); rootNode.attachChild(g); cam.setLocation(new Vector3f(0.0f, 0.0f, 0.40647888f)); cam.setRotation(new Quaternion(0.0f, 1.0f, 0.0f, 0.0f)); Texture tex = assetManager.loadTexture("Interface/Logo/Monkey.jpg"); Material mat = new Material(assetManager, "Common/MatDefs/Misc/UnshadedNodes.j3md"); //Material mat = new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md"); mat.setColor("Color", ColorRGBA.Yellow); mat.setTexture("ColorMap", tex); g.setMaterial(mat); //place the geoms in the transparent bucket so that they are rendered back to front for maximum overdraw g.setQueueBucket(RenderQueue.Bucket.Transparent); for (int i = 0; i < 1000; i++) { Geometry cl = g.clone(false); cl.move(0, 0, -(i + 1)); rootNode.attachChild(cl); } flyCam.setMoveSpeed(20); Logger.getLogger("com.jme3").setLevel(Level.WARNING); this.setAppProfiler(new Profiler()); }
Example 16
Source File: SelectionIndicator.java From Lemur with BSD 3-Clause "New" or "Revised" License | 5 votes |
protected void copyTransforms( Geometry copy, Geometry original ) { // For now we will assume the root is the actual // world root so that the math is easier. copy.setLocalTranslation(original.getWorldTranslation()); copy.setLocalRotation(original.getWorldRotation()); copy.setLocalScale(original.getWorldScale()); }
Example 17
Source File: TestSpotLightShadows.java From jmonkeyengine with BSD 3-Clause "New" or "Revised" License | 4 votes |
public void setupLighting() { AmbientLight al = new AmbientLight(); al.setColor(ColorRGBA.White.mult(0.02f)); rootNode.addLight(al); rootNode.setShadowMode(ShadowMode.CastAndReceive); spot = new SpotLight(); spot.setSpotRange(1000); spot.setSpotInnerAngle(5f * FastMath.DEG_TO_RAD); spot.setSpotOuterAngle(10 * FastMath.DEG_TO_RAD); spot.setPosition(new Vector3f(70.70334f, 34.013165f, 27.1017f)); spot.setDirection(lightTarget.subtract(spot.getPosition()).normalizeLocal()); spot.setColor(ColorRGBA.White.mult(2)); rootNode.addLight(spot); // PointLight pl=new PointLight(); // pl.setPosition(new Vector3f(77.70334f, 34.013165f, 27.1017f)); // pl.setRadius(1000); // pl.setColor(ColorRGBA.White.mult(2)); // rootNode.addLight(pl); lightMdl = new Geometry("Light", new Sphere(10, 10, 0.1f)); lightMdl.setMaterial(assetManager.loadMaterial("Common/Materials/RedColor.j3m")); lightMdl.setLocalTranslation(new Vector3f(77.70334f, 34.013165f, 27.1017f)); lightMdl.setLocalScale(5); rootNode.attachChild(lightMdl); // DirectionalLight dl = new DirectionalLight(); // dl.setDirection(lightTarget.subtract(new Vector3f(77.70334f, 34.013165f, 27.1017f))); // dl.setColor(ColorRGBA.White.mult(0.7f)); // rootNode.addLight(dl); final SpotLightShadowRenderer slsr = new SpotLightShadowRenderer(assetManager, 512); slsr.setLight(spot); slsr.setShadowIntensity(0.5f); slsr.setShadowZExtend(100); slsr.setShadowZFadeLength(5); slsr.setEdgeFilteringMode(EdgeFilteringMode.PCFPOISSON); viewPort.addProcessor(slsr); SpotLightShadowFilter slsf = new SpotLightShadowFilter(assetManager, 512); slsf.setLight(spot); slsf.setShadowIntensity(0.5f); slsf.setShadowZExtend(100); slsf.setShadowZFadeLength(5); slsf.setEdgeFilteringMode(EdgeFilteringMode.PCFPOISSON); slsf.setEnabled(false); FilterPostProcessor fpp = new FilterPostProcessor(assetManager); fpp.addFilter(slsf); viewPort.addProcessor(fpp); ShadowTestUIManager uiMan = new ShadowTestUIManager(assetManager, slsr, slsf, guiNode, inputManager, viewPort); inputManager.addListener(new ActionListener() { @Override public void onAction(String name, boolean isPressed, float tpf) { if (name.equals("stop") && isPressed) { stop = !stop; // slsr.displayFrustum(); System.out.println("pos : " + spot.getPosition()); System.out.println("dir : " + spot.getDirection()); } } }, "stop"); inputManager.addMapping("stop", new KeyTrigger(KeyInput.KEY_1)); flyCam.setDragToRotate(true); }
Example 18
Source File: TestTwoSideLighting.java From jmonkeyengine with BSD 3-Clause "New" or "Revised" License | 4 votes |
@Override public void simpleInitApp() { // Two-sided lighting requires single pass. renderManager.setPreferredLightMode(TechniqueDef.LightMode.SinglePass); renderManager.setSinglePassLightBatchSize(4); cam.setLocation(new Vector3f(5.936224f, 3.3759952f, -3.3202777f)); cam.setRotation(new Quaternion(0.16265652f, -0.4811838f, 0.09137692f, 0.8565368f)); Geometry quadGeom = new Geometry("quad", new Quad(1, 1)); quadGeom.move(1, 0, 0); Material mat1 = assetManager.loadMaterial("Textures/BumpMapTest/SimpleBump.j3m"); // Display both front and back faces. mat1.getAdditionalRenderState().setFaceCullMode(RenderState.FaceCullMode.Off); quadGeom.setMaterial(mat1); // SimpleBump material requires tangents. TangentBinormalGenerator.generate(quadGeom); rootNode.attachChild(quadGeom); Geometry teapot = (Geometry) assetManager.loadModel("Models/Teapot/Teapot.obj"); teapot.move(-1, 0, 0); teapot.setLocalScale(2f); Material mat2 = new Material(assetManager, "Common/MatDefs/Light/Lighting.j3md"); mat2.setFloat("Shininess", 25); mat2.setBoolean("UseMaterialColors", true); mat2.setColor("Ambient", ColorRGBA.Black); mat2.setColor("Diffuse", ColorRGBA.Gray); mat2.setColor("Specular", ColorRGBA.Gray); // Only display backfaces. mat2.getAdditionalRenderState().setFaceCullMode(RenderState.FaceCullMode.Front); teapot.setMaterial(mat2); rootNode.attachChild(teapot); lightMdl = new Geometry("Light", new Sphere(10, 10, 0.1f)); lightMdl.setMaterial(assetManager.loadMaterial("Common/Materials/RedColor.j3m")); lightMdl.getMesh().setStatic(); rootNode.attachChild(lightMdl); pl = new PointLight(); pl.setColor(ColorRGBA.White); pl.setRadius(4f); rootNode.addLight(pl); }
Example 19
Source File: TestSimpleLighting.java From jmonkeyengine with BSD 3-Clause "New" or "Revised" License | 4 votes |
@Override public void simpleInitApp() { Geometry teapot = (Geometry) assetManager.loadModel("Models/Teapot/Teapot.obj"); TangentBinormalGenerator.generate(teapot.getMesh(), true); teapot.setLocalScale(2f); Material mat = new Material(assetManager, "Common/MatDefs/Light/Lighting.j3md"); // mat.selectTechnique("GBuf"); mat.setFloat("Shininess", 25); mat.setBoolean("UseMaterialColors", true); cam.setLocation(new Vector3f(0.015041917f, 0.4572918f, 5.2874837f)); cam.setRotation(new Quaternion(-1.8875003E-4f, 0.99882424f, 0.04832061f, 0.0039016632f)); // mat.setTexture("ColorRamp", assetManager.loadTexture("Textures/ColorRamp/cloudy.png")); // // mat.setBoolean("VTangent", true); // mat.setBoolean("Minnaert", true); // mat.setBoolean("WardIso", true); // mat.setBoolean("VertexLighting", true); // mat.setBoolean("LowQuality", true); // mat.setBoolean("HighQuality", true); mat.setColor("Ambient", ColorRGBA.Black); mat.setColor("Diffuse", ColorRGBA.Gray); mat.setColor("Specular", ColorRGBA.Gray); teapot.setMaterial(mat); rootNode.attachChild(teapot); lightMdl = new Geometry("Light", new Sphere(10, 10, 0.1f)); lightMdl.setMaterial(assetManager.loadMaterial("Common/Materials/RedColor.j3m")); lightMdl.getMesh().setStatic(); rootNode.attachChild(lightMdl); pl = new PointLight(); pl.setColor(ColorRGBA.White); pl.setRadius(4f); rootNode.addLight(pl); DirectionalLight dl = new DirectionalLight(); dl.setDirection(new Vector3f(-1, -1, -1).normalizeLocal()); dl.setColor(ColorRGBA.Green); rootNode.addLight(dl); MaterialDebugAppState debug = new MaterialDebugAppState(); debug.registerBinding("Common/ShaderLib/BlinnPhongLighting.glsllib", teapot); stateManager.attach(debug); setPauseOnLostFocus(false); flyCam.setDragToRotate(true); }
Example 20
Source File: TestSimpleLighting.java From MikuMikuStudio with BSD 2-Clause "Simplified" License | 4 votes |
@Override public void simpleInitApp() { Geometry teapot = (Geometry) assetManager.loadModel("Models/Teapot/Teapot.obj"); TangentBinormalGenerator.generate(teapot.getMesh(), true); teapot.setLocalScale(2f); Material mat = new Material(assetManager, "Common/MatDefs/Light/Lighting.j3md"); // mat.selectTechnique("GBuf"); mat.setFloat("Shininess", 12); mat.setBoolean("UseMaterialColors", true); // mat.setTexture("ColorRamp", assetManager.loadTexture("Textures/ColorRamp/cloudy.png")); // // mat.setBoolean("VTangent", true); // mat.setBoolean("Minnaert", true); // mat.setBoolean("WardIso", true); // mat.setBoolean("VertexLighting", true); // mat.setBoolean("LowQuality", true); // mat.setBoolean("HighQuality", true); mat.setColor("Ambient", ColorRGBA.Black); mat.setColor("Diffuse", ColorRGBA.Gray); mat.setColor("Specular", ColorRGBA.Gray); teapot.setMaterial(mat); rootNode.attachChild(teapot); lightMdl = new Geometry("Light", new Sphere(10, 10, 0.1f)); lightMdl.setMaterial(assetManager.loadMaterial("Common/Materials/RedColor.j3m")); lightMdl.getMesh().setStatic(); rootNode.attachChild(lightMdl); pl = new PointLight(); pl.setColor(ColorRGBA.White); pl.setRadius(4f); rootNode.addLight(pl); DirectionalLight dl = new DirectionalLight(); dl.setDirection(new Vector3f(-1, -1, -1).normalizeLocal()); dl.setColor(ColorRGBA.Green); rootNode.addLight(dl); }