List of usage examples for com.badlogic.gdx.graphics PerspectiveCamera PerspectiveCamera
public PerspectiveCamera(float fieldOfViewY, float viewportWidth, float viewportHeight)
From source file:com.andgate.ikou.view.GameScreen.java
License:Open Source License
public GameScreen(Ikou game, Level level, int currentFloorNumber) { this.game = game; this.level = level; batch = new SpriteBatch(); TilePalette palette = level.getFloor(currentFloorNumber).getPalette(); Color bg = palette.background; game.bloom.setClearColor(bg.r, bg.g, bg.b, bg.a); Gdx.graphics.setVSync(false);//from w ww . j a v a2 s .c om camera = new PerspectiveCamera(Constants.DEFAULT_FIELD_OF_VIEW, Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); modelBatch = new ModelBatch(); levelRender = new LevelRender(level); levelRender.setCamera(camera); levelRender.resetTransform(); levelRender.offsetFloors(); levelRender.spaceFloors(Constants.FLOOR_SPACING); player = new Player(game, level, currentFloorNumber); createEnvironment(); setupCamera(); InputProcessor moveController = new PlayerDirectionGestureDetector(player, camController); im = new InputMultiplexer(); im.addProcessor(moveController); Gdx.input.setInputProcessor(im); controlsMenu = new GameControlsMenu(game, im, moveController, camController); }
From source file:com.badlogic.gdx.graphics.g3d.test.KeyframedModelViewer.java
License:Apache License
@Override public void create() { model = ModelLoaderRegistry.loadKeyframedModel(Gdx.files.internal(fileName)); if (textureFileName != null) texture = new Texture(Gdx.files.internal(textureFileName), Format.RGB565, true); model.setMaterial(new Material("default", new TextureAttribute(texture, 0, "skin"))); hasNormals = hasNormals();//from www .j ava2s.c o m anim = (KeyframedAnimation) model.getAnimations()[0]; model.getBoundingBox(bounds); float len = bounds.getDimensions().len(); System.out.println("bounds: " + bounds); cam = new PerspectiveCamera(67, Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); cam.position.set(bounds.getCenter().cpy().add(len, len, len)); cam.lookAt(bounds.getCenter().x, bounds.getCenter().y, bounds.getCenter().z); cam.near = 1f; cam.far = 1000; renderer = new ImmediateModeRenderer10(); batch = new SpriteBatch(); font = new BitmapFont(); }
From source file:com.badlogic.gdx.graphics.g3d.test.MD2Viewer.java
@Override public void create() { model = new MD2Loader().load(Gdx.files.internal("data/knight.md2").read()); texture = new Texture(Gdx.files.internal("data/knight.jpg")); cam = new PerspectiveCamera(67, Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); cam.far = 300;//www. j a va 2 s . c o m cam.position.set(0, 12, 50); }
From source file:com.badlogic.gdx.graphics.g3d.test.QbobViewer.java
License:Apache License
@Override public void create() { animModel = G3dtLoader.loadKeyframedModel(Gdx.files.internal("data/boy.g3dt"), true); anim = animModel.getAnimations()[0]; Material material = new Material("default", new TextureAttribute(new Texture(Gdx.files.internal("data/boy.png")), 0, "tex0")); animModel.setMaterial(material);//ww w .j a v a 2s.c o m model[0] = G3dLoader.loadStillModel(Gdx.files.internal("data/qbob/test_section_01.dae.g3d")); lightMaps[0] = new Texture(Gdx.files.internal("data/qbob/world_blobbie_lm_01.jpg"), Format.RGB565, true); model[1] = G3dLoader.loadStillModel(Gdx.files.internal("data/qbob/test_section_02.dae.g3d")); lightMaps[1] = new Texture(Gdx.files.internal("data/qbob/world_blobbie_lm_02.jpg"), Format.RGB565, true); model[2] = G3dLoader.loadStillModel(Gdx.files.internal("data/qbob/test_section_03.dae.g3d")); lightMaps[2] = new Texture(Gdx.files.internal("data/qbob/world_blobbie_lm_03.jpg"), Format.RGB565, true); model[3] = G3dLoader.loadStillModel(Gdx.files.internal("data/qbob/test_section_04.dae.g3d")); lightMaps[3] = new Texture(Gdx.files.internal("data/qbob/world_blobbie_lm_04.jpg"), Format.RGB565, true); diffuse = new Texture(Gdx.files.internal("data/qbob/world_blobbie_blocks.png"), Format.RGB565, true); cam = new PerspectiveCamera(60, Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); cam.position.set(30, 10, 85f); cam.direction.set(0, 0, -1); cam.up.set(0, 1, 0); cam.near = 10f; cam.far = 1000; controller = new PerspectiveCamController(cam); Gdx.input.setInputProcessor(controller); batch = new SpriteBatch(); font = new BitmapFont(); }
From source file:com.badlogic.gdx.graphics.g3d.test.SkeletonModelViewer.java
License:Apache License
@Override public void create() { if (fileName.endsWith(".xml")) { model = new OgreXmlLoader().load(Gdx.files.internal(fileName), Gdx.files.internal(fileName.replace("mesh.xml", "skeleton.xml"))); } else// ww w .ja v a 2 s. com throw new GdxRuntimeException("Unknown file format '" + fileName + "'"); if (textureFileName != null) texture = new Texture(Gdx.files.internal(textureFileName)); hasNormals = hasNormals(); Material material = new Material("material", new TextureAttribute(texture, 0, "s_tex")); model.setMaterial(material); anim = (SkeletonAnimation) model.getAnimations()[0]; model.getBoundingBox(bounds); float len = bounds.getDimensions().len(); System.out.println("bounds: " + bounds); cam = new PerspectiveCamera(67, Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); cam.position.set(bounds.getCenter().cpy().add(len, len, len)); cam.lookAt(bounds.getCenter().x, bounds.getCenter().y, bounds.getCenter().z); cam.near = 1f; cam.far = 1000; renderer = new ImmediateModeRenderer10(); batch = new SpriteBatch(); font = new BitmapFont(); }
From source file:com.badlogic.gdx.graphics.g3d.test.StillModelViewer.java
License:Apache License
@Override public void create() { long start = System.nanoTime(); model = ModelLoaderRegistry.loadStillModel(Gdx.files.internal(fileName)); Gdx.app.log("StillModelViewer", "loading took: " + (System.nanoTime() - start) / 1000000000.0f); for (StillSubMesh mesh : model.subMeshes) { mesh.mesh.scale(0.1f, 0.1f, 0.1f); }//from w ww . jav a2 s . c o m if (!fileName.endsWith(".g3d")) { G3dExporter.export(model, Gdx.files.absolute(fileName + ".g3d")); start = System.nanoTime(); model = G3dLoader.loadStillModel(Gdx.files.absolute(fileName + ".g3d")); Gdx.app.log("StillModelViewer", "loading binary took: " + (System.nanoTime() - start) / 1000000000.0f); } if (textureFileNames.length != 0) { textures = new Texture[textureFileNames.length]; for (int i = 0; i < textureFileNames.length; i++) { textures[i] = new Texture(Gdx.files.internal(textureFileNames[i]), i > 0 ? false : true); } } hasNormals = hasNormals(); model.getBoundingBox(bounds); float len = bounds.getDimensions().len(); System.out.println("bounds: " + bounds); cam = new PerspectiveCamera(60, Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); cam.position.set(bounds.getCenter().cpy().add(len / 2, len / 2, len / 2)); cam.lookAt(bounds.getCenter().x, bounds.getCenter().y, bounds.getCenter().z); cam.near = 0.1f; cam.far = 1000; renderer = new ImmediateModeRenderer10(); batch = new SpriteBatch(); font = new BitmapFont(); }
From source file:com.badlogic.gdx.graphics.g3d.test.StillModelViewerGL20.java
License:Apache License
@Override public void create() { long start = System.nanoTime(); model = ModelLoaderRegistry.loadStillModel(Gdx.files.internal(fileName)); Gdx.app.log("StillModelViewer", "loading took: " + (System.nanoTime() - start) / 1000000000.0f); if (textureFileNames.length != 0) { textures = new Texture[textureFileNames.length]; for (int i = 0; i < textureFileNames.length; i++) { textures[i] = new Texture(Gdx.files.internal(textureFileNames[i]), i > 0 ? false : true); }//from w ww. j a v a 2 s . co m } model.getBoundingBox(bounds); float len = bounds.getDimensions().len(); System.out.println("bounds: " + bounds); cam = new PerspectiveCamera(60, Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); cam.position.set(bounds.getCenter().cpy().add(len / 2, len / 2, len / 2)); cam.lookAt(bounds.getCenter().x, bounds.getCenter().y, bounds.getCenter().z); cam.near = 0.1f; cam.far = 64; batch = new SpriteBatch(); font = new BitmapFont(); // shader1 = ShaderLoader.createShader("light", "light"); // shader2 = ShaderLoader.createShader("vertexpath", "vertexpath"); lightManager = new LightManager(4, LightQuality.VERTEX); lightManager.dirLight = new DirectionalLight(); lightManager.dirLight.color.set(0.09f, 0.07f, 0.09f, 0); lightManager.dirLight.direction.set(-.4f, -1, 0.03f).nor(); for (int i = 0; i < 4; i++) { PointLight l = new PointLight(); l.position.set(-MathUtils.random(8) + 4, MathUtils.random(3), -MathUtils.random(6) + 3); l.color.r = MathUtils.random(); l.color.b = MathUtils.random(); l.color.g = MathUtils.random(); l.intensity = 3; lightManager.addLigth(l); } lightManager.ambientLight.set(.03f, 0.05f, 0.06f, 0); protoRenderer = new PrototypeRendererGL20(lightManager); protoRenderer.cam = cam; MaterialAttribute c1 = new ColorAttribute(new Color(0.5f, 0.51f, 0.51f, 1.0f), ColorAttribute.specular); MaterialAttribute c2 = new ColorAttribute(new Color(0.95f, 0.95f, 0.95f, 1.0f), ColorAttribute.diffuse); MaterialAttribute t0 = new TextureAttribute(textures[0], 0, TextureAttribute.diffuseTexture); Material material = new Material("basic", c1, c2, t0); model.setMaterial(material); instance = new StillModelNode(); instance.getTransform().translate(-len / 2, -1, 2); instance.radius = bounds.getDimensions().len() / 2; instance2 = new StillModelNode(); instance2.getTransform().translate(len / 2, -1, -7); instance2.radius = instance.radius; }
From source file:com.badlogic.gdx.graphics.g3d.test.Viewer.java
License:Apache License
@Override public void create() { Texture texture = new Texture(Gdx.files.internal("data/models/ninja.jpg")); Material mat = new Material("mat", new TextureAttribute(texture, 0, "s_tex"), new ColorAttribute(Color.CYAN, ColorAttribute.diffuse)); model = new OgreXmlLoader().load(Gdx.files.internal("data/models/ninja.mesh.xml"), Gdx.files.internal("data/models/ninja.skeleton.xml")); model.setMaterial(mat);//from w w w. j a va 2 s. c om cam = new PerspectiveCamera(67, Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); BoundingBox bounds = model.subMeshes[0].mesh.calculateBoundingBox(); cam.position.set(bounds.getCenter().cpy().add(100, 100, 100)); cam.lookAt(bounds.getCenter().x, bounds.getCenter().y, bounds.getCenter().z); cam.near = 0.1f; cam.far = 1000; renderer = new ImmediateModeRenderer10(); batch = new SpriteBatch(); font = new BitmapFont(); for (String name : model.skeleton.animations.keys()) animNames.add(name); animation = animNames.get(0); }
From source file:com.badlogic.gdx.tests.DecalTransform.java
License:Apache License
@Override public void resize(int width, int height) { cam = new PerspectiveCamera(45, width, height); // cam = new OrthographicCamera(width, height); cam.near = 0.1f;//from w ww . j a v a 2 s . c o m cam.far = 1000f; cam.position.set(0, 0, 100); cam.direction.set(0, 0, -1); }
From source file:com.badlogic.gdx.tests.dragome.examples.GearsDemo.java
@Override public void create() { environment = new Environment(); environment.set(new ColorAttribute(ColorAttribute.AmbientLight, .2f, .2f, .2f, 2f)); // environment.add(new DirectionalLight().set(0.8f, 0.8f, 0.8f, 0f, -0.5f, -0.5f)); sl = new PointLight().setPosition(-5, 10, -6).setColor(1, 1, 1, 1).setIntensity(150); // sl2 = new PointLight().setPosition(0, 7, 5).setColor(0.3f, 0.8f, 0.3f, 1) // .setIntensity(20); //// w ww . j ava 2 s . c o m // sl3 = new PointLight().setPosition(0, 9, 6).setColor(0.3f, 0.3f, 0.8f, 1) // .setIntensity(20); environment.add(sl); // environment.add(sl2); // environment.add(sl3); cam = new PerspectiveCamera(67, Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); cam.position.set(-10, 3, 10f); cam.lookAt(-3, 0, 0); cam.near = 1f; cam.far = 100f; cam.update(); cameraController = new CameraInputController(cam); cameraController.autoUpdate = false; cameraController.forwardTarget = false; cameraController.translateTarget = false; Gdx.input.setInputProcessor(new InputMultiplexer(cameraController)); time = TimeUtils.millis(); viewport = new ScreenViewport(cam); guiViewport = new ScreenViewport(); DefaultShaderProvider defaultShaderProvider = new DefaultShaderProvider(); modelBatch = new ModelBatch(defaultShaderProvider); ModelBuilder modelBuilder = new ModelBuilder(); model1 = gear(modelBuilder, 1.0f, 4.0f, 1.0f, 20, 0.7f, Color.RED); gear1 = new ModelInstance(model1); model2 = gear(modelBuilder, 0.5f, 2.0f, 2.0f, 10, 0.7f, Color.GREEN); gear2 = new ModelInstance(model2); model3 = gear(modelBuilder, 1.3f, 2.0f, 1.5f, 10, 0.7f, Color.BLUE); gear3 = new ModelInstance(model3); font = new BitmapFont(); batch = new SpriteBatch(); lightModel = modelBuilder.createSphere(1, 1, 1, 10, 10, new Material(ColorAttribute.createDiffuse(1, 1, 1, 1)), Usage.Position); lightModel.nodes.get(0).parts.get(0).setRenderable(pLight = new Renderable()); }