Remove hardcoded stuff
This commit is contained in:
parent
8a82598ccc
commit
a16a310b25
@ -68,7 +68,7 @@ float ShadowCalculation(vec4 fragPosLightSpace, vec3 lightDir, vec3 normal);
|
||||
|
||||
void main(){
|
||||
if(hasTransparency == 1){
|
||||
if(texture(material.diffuse, TexCoord).a < 0.1){
|
||||
if(texture(material.diffuse, TexCoord).a < 0.01){
|
||||
discard;
|
||||
}
|
||||
}
|
||||
|
||||
@ -53,7 +53,6 @@ import electrosphere.renderer.light.PointLight;
|
||||
import electrosphere.renderer.light.SpotLight;
|
||||
import electrosphere.renderer.loading.ModelPretransforms;
|
||||
import electrosphere.renderer.meshgen.TerrainChunkModelGeneration;
|
||||
import electrosphere.renderer.meshgen.TreeModelGeneration;
|
||||
import electrosphere.renderer.shader.ShaderOptionMap;
|
||||
import electrosphere.renderer.texture.TextureMap;
|
||||
import electrosphere.renderer.ui.ElementManager;
|
||||
@ -450,8 +449,6 @@ public class Globals {
|
||||
TerrainChunkModelGeneration.terrainChunkShaderProgram = ShaderProgram.loadSpecificShader("/Shaders/fluid1/fluid1.vs", "/Shaders/fluid1/fluid1.fs");
|
||||
//init skybox
|
||||
assetManager.registerModelToSpecificString(RenderUtils.createSkyboxModel(null), AssetDataStrings.ASSET_STRING_SKYBOX_BASIC);
|
||||
//init leaves
|
||||
assetManager.registerModelToSpecificString(TreeModelGeneration.generateLeavesModel(), AssetDataStrings.LEAVES_MODEL);
|
||||
//init models
|
||||
assetManager.addModelPathToQueue("Models/unitsphere.fbx");
|
||||
assetManager.addModelPathToQueue("Models/unitsphere_1.fbx");
|
||||
|
||||
@ -238,10 +238,6 @@ public class ClientLoading {
|
||||
}
|
||||
});
|
||||
|
||||
Entity leafBlob = EntityCreationUtils.createClientSpatialEntity();
|
||||
EntityCreationUtils.makeEntityDrawable(leafBlob, "Models/foliageBlockTemplate1Test1.fbx");
|
||||
DrawableUtils.makeEntityTransparent(leafBlob);
|
||||
|
||||
}
|
||||
|
||||
static void initDrawCellManager(){
|
||||
|
||||
@ -1,196 +0,0 @@
|
||||
package electrosphere.renderer.meshgen;
|
||||
|
||||
import electrosphere.engine.Globals;
|
||||
import electrosphere.renderer.Material;
|
||||
import electrosphere.renderer.Mesh;
|
||||
import electrosphere.renderer.Model;
|
||||
import electrosphere.renderer.RenderPipelineState.SelectedShaderEnum;
|
||||
|
||||
import static org.lwjgl.opengl.GL30.glBindVertexArray;
|
||||
import static org.lwjgl.opengl.GL30.glGenVertexArrays;
|
||||
|
||||
import java.nio.FloatBuffer;
|
||||
import java.nio.IntBuffer;
|
||||
import java.util.ArrayList;
|
||||
|
||||
import org.lwjgl.BufferUtils;
|
||||
|
||||
public class TreeModelGeneration {
|
||||
|
||||
protected static Mesh generateLeafMesh(){
|
||||
|
||||
Mesh mesh = new Mesh();
|
||||
|
||||
|
||||
mesh.mesh = null;
|
||||
|
||||
//
|
||||
// VAO
|
||||
//
|
||||
mesh.vertexArrayObject = glGenVertexArrays();
|
||||
glBindVertexArray(mesh.vertexArrayObject);
|
||||
|
||||
|
||||
|
||||
float[] vertices = new float[]{
|
||||
0.5f, 0.5f, 0,
|
||||
0.5f, -0.5f, 0,
|
||||
-0.5f, -0.5f, 0,
|
||||
-0.5f, 0.5f, 0,
|
||||
|
||||
|
||||
0, 0.5f, 0.5f,
|
||||
0, -0.5f, 0.5f,
|
||||
0, -0.5f, -0.5f,
|
||||
0, 0.5f, -0.5f,
|
||||
|
||||
|
||||
0.5f, 0, 0.5f,
|
||||
0.5f, 0, -0.5f,
|
||||
-0.5f, 0, -0.5f,
|
||||
-0.5f, 0, 0.5f
|
||||
};
|
||||
|
||||
float[] normals = new float[]{
|
||||
0.707f, 0.707f, 0,
|
||||
0.707f, -0.707f, 0,
|
||||
-0.707f, -0.707f, 0,
|
||||
-0.707f, 0.707f, 0,
|
||||
|
||||
0, 0.707f, 0.707f,
|
||||
0, -0.707f, 0.707f,
|
||||
0, -0.707f, -0.707f,
|
||||
0, 0.707f, -0.707f,
|
||||
|
||||
0.707f, 0, 0.707f,
|
||||
0.707f, 0, -0.707f,
|
||||
-0.707f, 0, -0.707f,
|
||||
-0.707f, 0, 0.707f,
|
||||
};
|
||||
|
||||
int[] elements = new int[]{
|
||||
0, 1, 2,
|
||||
0, 2, 3,
|
||||
4, 5, 6,
|
||||
4, 6, 7,
|
||||
8, 9, 10,
|
||||
8, 10, 11
|
||||
};
|
||||
|
||||
float[] uvs = new float[]{
|
||||
1, 1,
|
||||
1, 0,
|
||||
0, 0,
|
||||
0, 1,
|
||||
|
||||
1, 1,
|
||||
0, 1,
|
||||
0, 0,
|
||||
1, 0,
|
||||
|
||||
1, 1,
|
||||
1, 0,
|
||||
0, 0,
|
||||
0, 1,
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
//
|
||||
//Buffer data to GPU
|
||||
//
|
||||
|
||||
try {
|
||||
mesh.vertexCount = vertices.length / 3;
|
||||
FloatBuffer VertexArrayBufferData = BufferUtils.createFloatBuffer(mesh.vertexCount * 3);
|
||||
VertexArrayBufferData.put(vertices);
|
||||
VertexArrayBufferData.flip();
|
||||
mesh.buffer_vertices(VertexArrayBufferData, 3);
|
||||
} catch (NullPointerException ex){
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
|
||||
|
||||
//
|
||||
// FACES
|
||||
//
|
||||
mesh.faceCount = elements.length / 3;
|
||||
mesh.elementCount = elements.length;
|
||||
try {
|
||||
IntBuffer elementArrayBufferData = BufferUtils.createIntBuffer(mesh.elementCount);
|
||||
elementArrayBufferData.put(elements);
|
||||
elementArrayBufferData.flip();
|
||||
mesh.buffer_faces(elementArrayBufferData);
|
||||
} catch (NullPointerException ex){
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
//
|
||||
// NORMALS
|
||||
//
|
||||
try {
|
||||
mesh.normalCount = normals.length / 3;
|
||||
FloatBuffer NormalArrayBufferData;
|
||||
if(mesh.normalCount > 0){
|
||||
NormalArrayBufferData = BufferUtils.createFloatBuffer(mesh.normalCount * 3);
|
||||
NormalArrayBufferData.put(normals);
|
||||
NormalArrayBufferData.flip();
|
||||
mesh.buffer_normals(NormalArrayBufferData, 3);
|
||||
}
|
||||
} catch (NullPointerException ex){
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
//
|
||||
// TEXTURE COORDINATES
|
||||
//
|
||||
try {
|
||||
mesh.textureCoordCount = uvs.length / 2;
|
||||
FloatBuffer TextureArrayBufferData;
|
||||
if(mesh.textureCoordCount > 0){
|
||||
TextureArrayBufferData = BufferUtils.createFloatBuffer(mesh.textureCoordCount * 2);
|
||||
TextureArrayBufferData.put(uvs);
|
||||
TextureArrayBufferData.flip();
|
||||
mesh.buffer_texture_coords(TextureArrayBufferData, 2);
|
||||
}
|
||||
} catch (NullPointerException ex){
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
glBindVertexArray(0);
|
||||
mesh.nodeID = "leaves";
|
||||
return mesh;
|
||||
}
|
||||
|
||||
|
||||
|
||||
public static Model generateLeavesModel(){
|
||||
Model rVal = new Model();
|
||||
rVal.meshes = new ArrayList<Mesh>();
|
||||
Mesh m = generateLeafMesh();
|
||||
|
||||
|
||||
Material groundMat = new Material();
|
||||
groundMat.set_diffuse("/Textures/leavesStylized1.png");
|
||||
groundMat.set_specular("/Textures/leavesStylized1.png");
|
||||
Globals.assetManager.addTexturePathtoQueue("/Textures/leavesStylized1.png");
|
||||
m.setMaterial(groundMat);
|
||||
|
||||
m.generateShader(SelectedShaderEnum.PRIMARY, false, true);
|
||||
m.generateShader(SelectedShaderEnum.OIT, false, true);
|
||||
m.parent = rVal;
|
||||
|
||||
rVal.meshes.add(m);
|
||||
|
||||
return rVal;
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user