I'll go first. I've been working on an FP16 HDR lighting pipeline in the past 3 days:


It features luminance adaptation, blooming, and so on, but it's the first time I've implemented HDR lighting so there's bound to be something incorrect in there.



It's really easiest to just render transparent objects forward-style after everything that's deferred (either using viewport-masking or render queues).mkultra333 wrote: I'm fumbling around trying to work how I'm going to add decent looking transparency to my quasi-deferred shading system.


HDR is also on my todo list - I want the magma to glownullsquared wrote:I've been working on an FP16 HDR lighting pipeline in the past 3 days


Code: Select all
M::force F = M::mass(10) * M::acceleration(5,0,0);


Code: Select all
#include <inertia/inertia.h>
#include <iostream>
namespace M = inertia::mechanics;
namespace R = inertia::relativity;
void main()
{
// Normal Newton Force calculation using a normal Galilean spacetime
M::force F = M::mass(10) * M::acceleration(5,0,0);
// Calculate lorentz factor of a object travelling at 0.75c
R::lorentz_factor y = R::lorentz_factor_of(M::constants::c() * 0.75);
// Calculate Lorentz time transformation.
M::time t1 = M::time(10.0) * y;
// Calculate Lorentz length contraction.
M::length l1 = M::length(10.0, 0.0, 0.0) / y;
// And out it goes.
std::cout << F.x << std::endl << t1 << std::endl << l1.x << std::endl;
}Code: Select all
50
15.1186
6.61438



Thanks.jjp wrote:The lighting really does a lot for the visual quality of your game. This looks way better than GraLL


Interesting! Looks like I have competitionaerique wrote:My interest is basically the same as PolyVox's: fully destructible environments.
Code: Select all
pickedEnt = nil
function updatePropertiesWinGenericProp(win)
local lay = win:getLayout()
win:update({
test = { type = "text", text = "lol it's a gp" }})
lay:addWidget(win:child("test"))
end
updatePropertiesWinFuncs = {}
updatePropertiesWinFuncs[game.genericProp.TYPE] = updatePropertiesWinGenericProp
stringTypes = {}
stringTypes[game.genericProp.TYPE] = "genericProp"
function updatePropertiesWin(ent)
pickedEnt = ent
local win = editor.guiSheet:child("propertiesWin")
win:resetLayout()
win:clearChildren(false)
local lay = gui.verticalLayout()
win:setLayout(lay)
win:update({
nameLabel = {
type = "text",
text = "name"
},
nameText = {
type = "textBox",
text = ent:name()
},
typeLabel = {
type = "text",
text = "type"
},
typeText = {
type = "text",
text = stringTypes[ent:type()]
}
})
lay:addWidget(win:child("nameLabel"))
lay:addWidget(win:child("nameText"))
lay:addWidget(win:child("typeLabel"))
lay:addWidget(win:child("typeText"))
updatePropertiesWinFuncs[ent:type()](win)
end


I just recently did a shader for a fellow Ogre-er and I put it in the public domain, perhaps you might find it useful: http://www.ogre3d.org/wiki/index.php/No ... ing_ShaderKojack wrote:Right now it can successfully generate a material with a diffuse map, normal map and per pixel lighting, using a slightly modified version of the ogre multilight cg shader.
I'm going to add more map types (specular, cone, etc) and support baking of max procedural textures into images.




Code: Select all
function testOnEnter(trigger, ent)
trigger:setMaterial("red")
end
function testOnExit(trigger, ent)
trigger:setMaterial("green")
end

Kojack wrote:Your shader works great, it will be the default one now.
WoopsFinally I discovered that the flat normal map texture stored on the wiki is a png, but the material file wanted a bmp.

