public OrthoCam() { this(SilenceEngine.display.getWidth(), SilenceEngine.display.getHeight()); }
/** * Returns the aspect ratio of the display device. It is nothing but the width / height ratio. * * @return The aspect ratio of the display. */ @PlatformDesktop @PlatformHTML5 @PlatformAndroid default float getAspectRatio() { return (float) getWidth() / (float) getHeight(); }
@Override public void render(float delta) { if (dynamicProgram == null) return; camera.apply(); Texture.EMPTY.bind(0); dynamicProgram.use(); float percentage = MathUtils.convertRange(loader.getPercentage(), 0, 100, 100, SilenceEngine.display.getWidth() - 100); dynamicRenderer.begin(Primitive.TRIANGLE_FAN); { dynamicRenderer.vertex(100, SilenceEngine.display.getHeight() - 110); dynamicRenderer.color(Color.DARK_GREEN); dynamicRenderer.vertex(percentage, SilenceEngine.display.getHeight() - 110); dynamicRenderer.color(Color.GREEN); dynamicRenderer.vertex(percentage, SilenceEngine.display.getHeight() - 70); dynamicRenderer.color(Color.GREEN); dynamicRenderer.vertex(100, SilenceEngine.display.getHeight() - 70); dynamicRenderer.color(Color.DARK_GREEN); } dynamicRenderer.end(); if (fontRenderer == null || font == null) return; fontRenderer.begin(); fontRenderer.render(font, "Loading " + loader.getPercentage(), 110, SilenceEngine.display.getHeight() - 100, Color.WHITE); fontRenderer.end(); }
public ResourceLoadingState(ResourceLoader loader, SimpleCallback doneCallback) { this.camera = new OrthoCam(SilenceEngine.display.getWidth(), SilenceEngine.display.getHeight()); this.loader = loader; this.doneCallback = doneCallback; this.dynamicRenderer = new DynamicRenderer(); BitmapFont.load(FilePath.getResourceFile("engine_resources/fonts/roboto32px.fnt"), font -> this.font = font); BitmapFontRenderer.create(fontRenderer -> this.fontRenderer = fontRenderer); DynamicProgram.create(dynamicProgram -> { this.dynamicProgram = dynamicProgram; dynamicProgram.applyToRenderer(dynamicRenderer); }); }
public void bind(boolean force) { if (disposed) throw new GLException("Cannot bind a disposed framebuffer"); if (!force && CURRENT == this) return; SilenceEngine.graphics.glBindFramebuffer(target.getValue(), id); GLError.check(); SilenceEngine.graphics.glViewport(0, 0, SilenceEngine.display.getWidth(), SilenceEngine.display.getHeight()); GLError.check(); SilenceEngine.graphics.glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); GLError.check(); CURRENT = this; }
final float rayNDCy = (screenY / SilenceEngine.display.getHeight() - 0.5f) * 2f;