Cube Map EMBM

So EMBM works by having a “perturbation map” that offsets the environmental map texture read. Most of these “perturbation maps” are
of the (dU,dV) format because tangent space is 2-dimensional.

If I wanted to use a cube-map as my environment map, is there anything special that I would have to do (since cube-maps use a 3-dimensional look-up)?

I haven’t really read the NV_GL_TEXTURE_SHADERS spec too thoroughly…is the answer buried in there? Or will OpenGL simply do the right thing?


Ordinary EMBM and cubemaps are incompatible.

GeForce3 does support EMBM, but it also supports some much better techniques too. I’ve never found EMBM to be that interesting…

  • Matt

and when is it possible to begin developing for a geforce3? i mean, 1050 for win2k is out since weeks, but no one gives it free. you matt talks all the days that on the gf3 its possible to do, but as long as there is no emulator for win2k free, your nice talking is nothing but sh**/big blah…

i’m getting angry, its the 2nd week waiting for it…

btw, how to do per pixel environment bumped mapping with a cubemap is demonstrated on the nvidia/developer page. it looks great, cant wait for the texture_shaders and see if it is possible to put it in there without reading out all the pixels and rendering every pixel itselfs back (not so fast, but good to test drivers for speed with not so often nice supported things like readpixels etc…)

Ummm, the reason you can’t get that driver is because no one is supposed to have it in the first place! Every time you see a leaked driver, it means someone violated the terms of a contract with us.

  • Matt

hm, can you give pro and contra of your political strategy?
whats the use of blocking us young developers from your stuff but giving it free for the big firmes?

i mean, take a look at this:

and then you are not interested in embm any more but you want to get this (nothing against embm, btw )

btw, if you dont want to give these drivers free, you can give slowed ones free… fast olds stable ones for the gamers, instable slow ones wich supports every extension for the programmers and perfect ones for firetoads and co.

notnice, but then we can start working for the future, too.

(Please note that the following is a joke)

If you really want and need the drivers, why don’t you go down to nVidia headquarters, break in, and steal the drivers and the GeForce3 reference cards they have.

That way you can actually use all of the new features, instead of emulating them in software.

(End joke)

All joking aside, I can’t see why everybody is so desperate to get the new drivers. It’s true that they offer some new features, but most developers aren’t even using the register combiners extension, which was released what, a year ago?

Why doesn’t everybody just use the features available to them, instead of whining that they want some unstable, buggy drivers with features that they won’t even use for a year or so.


dave – the point to giving drivers (I would think) to big developers is so that they can run the real card, not so they can emulate it. Emulating those features are basically worthless to developers because you have no idea how fast things will run on the real hardware.

What exactly do you hope to gain from getting this drivers earlier? What is so important that you get angry waiting a few weeks?

Now back to the originally scheduled program.

I saw the Cube-Map EMBM demo source (didn’t run it yet) but good Lord. I’m pretty sure that reading back the framebuffer with a readpixels followed by a bunch of glPoints is not the fastest way to do it! (although it hints at how you might actually implement it)

So the real question is: are texture_shaders cool enough to do cube-map embm? Matt, am I going to have to hunt you down for an answer?
Or will this be a OpenGL GF3 tech demo? (You mean I have to WAIT? )

emulated vertex program is fast enough to use (like the vertex shaders of dx8 show), and i want to use them.

i use the register combiners since i understood them (started in august, really got something in december )

the 1050 supports a geforce3 emulator, and its usefull to just try if something COULD work possibly, just to know it, thats all. i know that big companies HAVE a geforce3, so they can test the speed, too. i’m waiting yet since weeks, and i wouldn’t go angry if its just not yet out, but i dont have win98, and the win9x version is out since over a week, and i’m sitting here with win2k and cant do anything with it (and i’m waiting for a support for vertex_program since more than two months, there i read the first time about it… and nvidia always sayd its in the next drivers (it whas planed once in the 6.xx … nothing in there… now it whas planed in the 7.xx… just leaked ones wich dont work how they have… the 1050 is official (ok, leaked yet ), but there it IS working correctly…

back to the topic

i’m not pretty sure, i AM sure he uses Readpixels and then renders a bunch of points, and why? because you can download the source

and i am interested for example, if we can get this in the textureshaders… and i dont need a geforce3 to know that it is fast then when you use JUST texture_shaders for it… it doesnt have to run on my gf2mx fast then…

(other question, matt, can we use multisample for multipassing or just for depth of field and/or antialiasing etc? )

Forgive me if this sounds naive, but what is this 1050 driver that everyone is talking about? It appears that the most current driver on the NVidia website is 650. Thanks.

its a not yet official released driver wich you can download as leaked one everywhere for win9x

this driver supports a bunch of new extensions and the one i love the most is the nv_vertex_program…

it also has implemented a geforce3 emulator, and when you enable this you can use everything a geforce3 has (like texture3D and texture_shaders etc…), its just slow (what do you expect? )

it also supports stereorendering (with the correct glasses resulting in “real” 3d)

and with it (to come back to topic) you can do cubic environment mapped bumpmapping, too

The Windows 9x version 10 drivers have been lurking around the net for a bit. This is not officially released, although from what I understand it is basically the final version. The Win2k version is not available in leaked form (hence dave’s greivance).

People know alot about the capabilities for the version 10 drivers because somewhere on NV’s home page is the version 10 driver nvOpenGLspec.pdf Someone posted the link for it on a previous forum (called 1050 driver or something), but he claimed you could find it by using Google to search NV’s web.

In the new nvspec is a bunch of cool new extensions, particularly nv_texture_shader.


btw, a direct question to matt:

whats the use of not giving free the drivers? just write to em, that they are not stable, not finished etc, and put it onto the std developer site (where no one but developing interested go to, the others go to /drivers( as Tone shows ), where you dont need to put em in if you dont want).

whats the pro of not giving them free?

We have many reasons for not giving out prerelease drivers publicly. Our reasons are our own, and we need not justify our decision.

Here are some possible reasons, though:

  • feature implementations not finished

  • major bugs that will hose peoples’ systems (people WILL complain, even if we tell them it’s their problem)

  • extension specs not finalized; apps written with prerelease drivers may be incompatible with those written with final drivers

  • gives away secrets to competitors

  • we can still choose to give drivers to specific developers working on major titles

  • impossible for us to provide any semblance of support for prerelease drivers, making them difficult to use unless we only send them to specific major developers, who we do have the resources to support

  • Matt

ok bad anyways, cause there you left out the young ones wich want to start

Posted by davepermen in this thread

i just dont like such posts where just some guys cry around on **** that noone can change anyways (go to the_ctrl_alt_del, and you can read such stuff all the day in and out…) there is just no sence in these things, thats all… guys crieing around,

Stop your crying davepermen. You’ll get the drivers when they’re ready. You can’t change when they release them so what’s the point complaining about it…

they are ready, since weeks, thats what matt answered in another post (and they are on win9x to download since a week, too)

what i hate is that they arent to download in the win2k version (wich, as matt there said, is finished since weeks, too)

you complain about not having leaked drivers for Win2k… heh, i run Linux. i haven’t seen ANY leaked drivers whatsoever for this platform :stuck_out_tongue:

so NV_texture_shader will be supported in the next driver release? k… if that’s the NV OpenGL extension for D3D 8 pixel shaders, i guess we have two pixel shader extensions, since ATI is supposedly also working on a pixel shader extension.
i hope if NV_texture_shader is a pixel shader type of extension, that ATI meant it was cooperating with NV on it.
otherwise, damn ATI and NVIDIA for not cooperating and creating unnecessary disruption for the developers.

Despite the fact that this thread has been taken over by discussion about an unreleased driver, happily I found the Blinn Bump Mapping demo in NV’s site. Better than EMBM and everything (it took me a while to get the distinction).

Too bad the demo is for DX8. But I’ll assume that NV’s OpenGL functionality is a superset of DX8 functionality, so now I just need to learn to read DX8 code…

when you mean the nv20 functionality, yes, but not the nv15 functionality there dx8 is bether… (dont talk about what is in hw and what not, just the theoretical useable stuff in dx8 is more than in gf2 gl)

when you want the superset of opengl, you need the 1050

best of all is raytraced radiosity, but i think this takes a looooooooooooooong time until i can get a nvidia board doing this