Jump to content

SpiderPig

Developers
  • Posts

    2,284
  • Joined

  • Last visited

Everything posted by SpiderPig

  1. Has it been documented yet?
  2. Is your grass there a geometry shader or part of Leadwerks vegetation system? AO really does sell the depth of things. Before AO After AO
  3. Yeah me too. I think the thing that really makes the grass pop is the sort of ambient occlusion where I make the roots darker than the tips. I'll post a before and after pic later.
  4. I'd like to try using these now. Is this the way to use them? I found this here. //Load compute shader auto module = LoadShaderModule("Shaders/Compute/test.comp.spv"); auto shader = CreateShader(); shader->SetModule(module, SHADER_COMPUTE); //Create work group int workercount = 8; auto workgroup = CreateWorkgroup(shader, workercount, workercount, workercount); I couldn't find CreateWorkgroup() in the API though.
  5. It's a bit slow using the geometry shader. FPS drops from 800 to 300. I think compute shaders might help here.
  6. SpiderPig

    Environment probe

    It's looking real good. I can't wait to test these things in my open world game.
  7. Changing the material roughness made it look 10x better. I'm happy with the lighting now.
  8. That seemed to have done the trick.
  9. Hmm, actually I don't think my normals are right... I'm multiplying the local vertex positions by a local matrix to rotate the blades but the normals are unchanged. Can I rotate normals by multiplying by the same matrix as I do the vertices?
  10. Just thought I'd check. If I turn off Image Based Lighting I get a darker grass but no more artifacts. Not sure if that's the cause or it's just hiding it. EDIT: I think IBL is the cause, though I have no idea why.
  11. Oh, that reminds me. Inside that function in Lighting.glsl, RenderLight() was using the input vertexWorldPosition rather than the argument "position". RenderLight(lightIndex, material, materialInfo, vertexWorldPosition.xyz, normal, v, NdotV, f_diffuse, f_specular, renderprobes, ibldiffuse, iblspecular); I thought it should use the argument 'position' seeing as it is passed to it but not sure... I don't know if it's something the user could end up editing in the UserFunction?
  12. I'm getting mixed and seemingly random results with the lighting of my grass. The line between light and dark moves with the camera. This is what I'm passing out of my geometry shader to the default PBR fragment shader. The grass is green as I'm setting the vertex color to green. The fragment shader is just doing the lighting. I've looked at the fragment shaders to see what it needed but might have missed something? layout(location = 25 ) out uint outEntityID; layout(location = 5 ) out flat uint outMaterialID; layout(location = 8 ) out vec4 outVertexPosition; layout(location = 1 ) out vec3 normal; layout(location = 7 ) out vec4 worldPosition; layout(location = 0 ) out vec4 vertexColor; First it was this; Now at random it is this;
  13. Half my grass was actually below the ground. Now it looks better and I gave it some rough animation. I've also made it that the root of the grass blades are darker. Still needs a lot of work but I'm done for now I think. I can fine tune it later.
  14. Thanks, I didn't think so. I must be passing something wrong.
  15. I wonder what causes this in PBR lighting... my normals and world positions are passed to the fragment shader properly, but do I need tex_coords too?
  16. Needs some better noise maps for position and rotation I think
  17. First attempt at grass in Ultra. Lighting needs work still, but not too bad.
  18. Do you mean this? I don't see how this takes into account making our own shaders though.
  19. It makes sense to make everything relative to the executable so we can just define a shader family as "Shaders\MyFamily.json" or "Materials\MyMaterial\MyFamily.json".
  20. Okay so I see now it's trying to load it from the shaders folder too... I see what your doing for the standard materials and the shader family's for Ultra but I don't think its a good idea. Ultra needs to be flexible. I want my shaders and textures in one folder. I don't want to split the materials and textures into one and then my custom shaders into another. I think we should be able to define a path because it is, after all, a file.
  21. I name my json files .mat and .fam so I can see the difference without having to open them, but it's no big deal. I'll make it work.
  22. Hey @Josh just wondering if this is actually a bug or I should change my files to all use .json? Thanks.
  23. When it comes time to expand the character controller system, I was thinking it might be good to have it as an expandable system. Like a component where if we wanted too, override key systems of the controller, like gravity, physics and anything else that makes it a controller. I would find that very useful. Just a thought.
×
×
  • Create New...