List of usage examples for com.badlogic.gdx.graphics.g3d.utils DefaultShaderProvider DefaultShaderProvider
public DefaultShaderProvider()
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); ////from w w w . j ava 2s.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()); }
From source file:com.github.fauu.helix.system.RenderingSystem.java
License:Open Source License
@Override protected void initialize() { displayableCollections = new Array<Array<? extends Displayable>>(); modelDisplayables = new Array<ModelDisplayable>(); displayableCollections.add(modelDisplayables); decalDisplayables = new Array<DecalDisplayable>(); displayableCollections.add(decalDisplayables); renderContext = new RenderContext(new DefaultTextureBinder(DefaultTextureBinder.WEIGHTED)); renderContext.setCullFace(GL20.GL_BACK); modelBatch = new ModelBatch(renderContext, new DefaultShaderProvider(), new HelixRenderableSorter()); decalBatch = new DecalBatch(new CameraGroupStrategy(camera)); spriteBatch = new SpriteBatch(); }
From source file:org.ah.gcode.preview.player.Renderer.java
License:Open Source License
public Renderer() { bottomShaderProvider = new DefaultShaderProvider() { DefaultShader currentLayerShader = null; @Override/*from ww w. java 2s.c o m*/ protected Shader createShader(final Renderable renderable) { if (currentLayerHasMesh(renderable.mesh)) { // Current layer shader if (currentLayerShader == null) { DefaultShader.Config config = new DefaultShader.Config( Gdx.files.internal("shaders/lighting.current.vertex.glsl").readString(), Gdx.files.internal("shaders/lighting.fragment.glsl").readString()); currentLayerShader = new DefaultShader(renderable, config); currentLayerShader.register(new BaseShader.Uniform("u_number"), new BaseShader.GlobalSetter() { @Override public void set(BaseShader shader, int inputID, Renderable renderable, Attributes combinedAttributes) { shader.set(inputID, getCurrentInstructionNo()); } }); } return currentLayerShader; } else { // Solid - below current layer shader DefaultShader.Config config = new DefaultShader.Config( Gdx.files.internal("shaders/lighting.solid.vertex.glsl").readString(), Gdx.files.internal("shaders/lighting.fragment.glsl").readString()); DefaultShader defaultShader = new DefaultShader(renderable, config) { @Override public boolean canRender(final Renderable renderable) { if (currentLayerHasMesh(renderable.mesh)) { return false; } return true; } }; return defaultShader; } } }; solidModelBatch = new ModelBatch(null, bottomShaderProvider, null); topShaderProvider = new DefaultShaderProvider(Gdx.files.internal("shaders/lighting.top.vertex.glsl"), Gdx.files.internal("shaders/lighting.fragment.glsl")); topModelBatch = new ModelBatch(null, topShaderProvider, null); }