rendering hardware data
This commit is contained in:
parent
a375e1a686
commit
acf86bcfa2
@ -13,6 +13,16 @@ struct Material {
|
|||||||
*/
|
*/
|
||||||
sampler2D specular;
|
sampler2D specular;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The normal sampler
|
||||||
|
*/
|
||||||
|
sampler2D normal;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The reflection map
|
||||||
|
*/
|
||||||
|
sampler2D parallax;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The shininess value
|
* The shininess value
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -1907,6 +1907,7 @@ Material albedo work
|
|||||||
Editor entities don't use charges on placing blocks
|
Editor entities don't use charges on placing blocks
|
||||||
Overhaul material loading - uses queued textures now
|
Overhaul material loading - uses queued textures now
|
||||||
Transparent block support
|
Transparent block support
|
||||||
|
Grab hardware data on init rendering engine
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -36,6 +36,7 @@ import electrosphere.renderer.debug.DebugRendering;
|
|||||||
import electrosphere.renderer.framebuffer.Framebuffer;
|
import electrosphere.renderer.framebuffer.Framebuffer;
|
||||||
import electrosphere.renderer.framebuffer.FramebufferUtils;
|
import electrosphere.renderer.framebuffer.FramebufferUtils;
|
||||||
import electrosphere.renderer.framebuffer.Renderbuffer;
|
import electrosphere.renderer.framebuffer.Renderbuffer;
|
||||||
|
import electrosphere.renderer.hw.HardwareData;
|
||||||
import electrosphere.renderer.light.LightManager;
|
import electrosphere.renderer.light.LightManager;
|
||||||
import electrosphere.renderer.model.Material;
|
import electrosphere.renderer.model.Material;
|
||||||
import electrosphere.renderer.pipelines.CompositePipeline;
|
import electrosphere.renderer.pipelines.CompositePipeline;
|
||||||
@ -66,6 +67,11 @@ public class RenderingEngine {
|
|||||||
* Handle for the window created by glfw
|
* Handle for the window created by glfw
|
||||||
*/
|
*/
|
||||||
private long windowPtr = -1;
|
private long windowPtr = -1;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The glfw hardware data
|
||||||
|
*/
|
||||||
|
public HardwareData hardwareData;
|
||||||
|
|
||||||
|
|
||||||
public static final int GL_DEFAULT_FRAMEBUFFER = 0;
|
public static final int GL_DEFAULT_FRAMEBUFFER = 0;
|
||||||
@ -244,6 +250,10 @@ public class RenderingEngine {
|
|||||||
"Error code: " + this.getGLFWErrorMessage(this.getGLFWError());
|
"Error code: " + this.getGLFWErrorMessage(this.getGLFWError());
|
||||||
throw new IllegalStateException(message);
|
throw new IllegalStateException(message);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//grab hardware data
|
||||||
|
this.hardwareData = new HardwareData();
|
||||||
|
|
||||||
//Gives hints to glfw to control how opengl will be used
|
//Gives hints to glfw to control how opengl will be used
|
||||||
GLFW.glfwWindowHint(GLFW.GLFW_CONTEXT_VERSION_MAJOR, 4);
|
GLFW.glfwWindowHint(GLFW.GLFW_CONTEXT_VERSION_MAJOR, 4);
|
||||||
GLFW.glfwWindowHint(GLFW.GLFW_CONTEXT_VERSION_MINOR, 5);
|
GLFW.glfwWindowHint(GLFW.GLFW_CONTEXT_VERSION_MINOR, 5);
|
||||||
|
|||||||
33
src/main/java/electrosphere/renderer/hw/HardwareData.java
Normal file
33
src/main/java/electrosphere/renderer/hw/HardwareData.java
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
package electrosphere.renderer.hw;
|
||||||
|
|
||||||
|
import java.util.LinkedList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.lwjgl.PointerBuffer;
|
||||||
|
import org.lwjgl.glfw.GLFW;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Data about the renderer hardware
|
||||||
|
*/
|
||||||
|
public class HardwareData {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The list of monitors available
|
||||||
|
*/
|
||||||
|
public final List<MonitorData> monitors = new LinkedList<MonitorData>();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor
|
||||||
|
*/
|
||||||
|
public HardwareData(){
|
||||||
|
PointerBuffer monitorBuff = GLFW.glfwGetMonitors();
|
||||||
|
if(monitorBuff != null){
|
||||||
|
while(monitorBuff.hasRemaining()){
|
||||||
|
long id = monitorBuff.get();
|
||||||
|
String name = GLFW.glfwGetMonitorName(id);
|
||||||
|
monitors.add(new MonitorData(id, name));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
28
src/main/java/electrosphere/renderer/hw/MonitorData.java
Normal file
28
src/main/java/electrosphere/renderer/hw/MonitorData.java
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
package electrosphere.renderer.hw;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Data about a monitor
|
||||||
|
*/
|
||||||
|
public class MonitorData {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The window id of the monitor
|
||||||
|
*/
|
||||||
|
public final long windowId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The name of the monitor
|
||||||
|
*/
|
||||||
|
public final String name;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor
|
||||||
|
* @param windowId The window id of the monitor
|
||||||
|
* @param name The name of the monitor
|
||||||
|
*/
|
||||||
|
public MonitorData(long windowId, String name){
|
||||||
|
this.windowId = windowId;
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue
Block a user