Jump to content

Josh

Staff
  • Posts

    23,316
  • Joined

  • Last visited

Everything posted by Josh

  1. Yes, that is the way it's supposed to work. When you use a hook you aren't calling Vulkan commands that get executed immediately. You are usually adding Vulkan command calls into a command buffer which is executed at a later time. The transfer command buffer only gets executed once, and the rendering command buffer may be executed several times. This is the way Vulkan works, everything is stored in a command buffer, then the whole command buffer is executed at once.
  2. The transfer command buffer is executed once. The rendering command buffer may be reused several times. If something is an action that gets performed once, use the TRANSFER hook ID. If it is normal rendering, it should be in a RENDER hook.
  3. Josh

    Environment Probes

    Getting better results when I use a third probe for the area between the lower and upper levels.
  4. Very very cool stuff to try: test.zip
  5. 1.0.3 Save/load of the new .ultra map format now supported. It could break at any time but it seems stable. The format is JSON-based, so I can add new data or change it slightly and maps will still load. Environment probes added in editor, along with controls of edge fade distance properties.
  6. @klepto2has used this successfully.
  7. The inner box shows the volume outside which the probe effect starts fading, and then it cuts off completely at the outer box. If the probe is aligned to a wall you can have a perfectly sharp cutoff, or you can fade an edge out gradually to blend with another probe or an unlit area.
  8. No, it's really weird stuff. You call World::AddHook with HOOKID_RENDER or HOOKID_TRANSFER as the argument, along with your function. It will pass a class to your function that contains a lot of Vulkan structures, and then it's up to you.
  9. We ended up using a callback so that Vulkan function calls can be made from the user's code, inside the rendering routine.
  10. Josh

    Environment Probes

    Adjusting the color of the probe entity itself changes the amount of reflected light.
  11. Josh

    Probe volume

    With an without environment probe
  12. Josh

    Environment probe

    This shows how an environment probe in a sealed area blocks out the skylight. Dark interiors will appear dark, even if it it bright outside. In a real scene, you would probably want to connect the interior and exterior with a long hallway with a probe in it that would make a more gradual transition, or add some more light inside the room.
  13. Josh

    Environment probes in editor

    Something unique about Ultra's probes is they block out the sky color. This allows you to have dark interior areas and bright outdoors areas. This completely not possible in some other engines that use PBR.
  14. Environment probes are drawn like a brush, so it's very easy to align them exactly to walls.
  15. 1.0.3 Rotation mouse cursor now used when rotation tool is active. Increased the minimum mouse move distance before drawing a new object is initiated.
  16. You need to multiply normals by a 3x3 matrix, not a 4x4.
  17. You are correct, but since that was the variable being passed to the function anyways, it won't make any difference.
  18. Here are the inputs for the lighting function: RenderLighting(material, materialInfo, vertexWorldPosition.xyz, n, v, NdotV, f_diffuse, f_specular, renderprobes, ibldiffuse, iblspecular);
  19. 1.0.3 Added "Generate Material" option when you right-click on any image file in the asset browser. Updated some icons. Bringing color back in slowly.
  20. Josh

    Grass Shader

    You don't need texcoords unless you are using normal maps.
×
×
  • Create New...