mentor information 201 glöps
- general:
- level: user
- personal:
- first name: rune
- last name: stubbe
- cdcs:
- cdc #1: fr-08: .the .product by Farbrausch [web]
- 1k Flash Flash Starfield by Pandafox
- shadebobs!
- sucksadded on the 2008-06-18 19:57:12
- 256b cracktro MS-Dos NIETAKT by Introkreatywne Niskopoziomowe Doznania [web]
- best cracktro ever!
- rulezadded on the 2008-06-10 22:22:32
- 1k Windows himalaya by TBC
- mad: i use multiple octaves of noise for the dithering as well :)
bored? not at all! - isokadded on the 2008-06-10 19:16:58
- 1k Windows himalaya by TBC
- I actually use multiple octaves of noise, as the noise itself is pretty dull :)
- isokadded on the 2008-06-10 17:53:28
- 1k Windows himalaya by TBC
- mad: I forgot to mention this: when i hit the surface i perform a few iterations of bisection (binary search for the surface) to improve precision. This, however, only helps if you actually hit the surface. Along the edges I will with high probability just step though the surface without even noticing. I dither everything to even out these errors by offsetting each primary ray by a 'random' percentage of the step size.
- isokadded on the 2008-06-10 17:34:02
- 1k Windows Frame by 1618
- pretty nice
- rulezadded on the 2008-06-09 16:39:43
- 1k Windows No Nooo! by Loonies [web]
- Very stylish and neat - martin magic!
I am a little surprised that this or 'Frame' didn't the 2nd place instead of the xor pattern thingie.
rbraz: what makes you say 'when'?
Don't expect us to do all the work for you every time. Crinklering is a privilege, not a right :) - rulezadded on the 2008-06-09 16:37:38
- 1k Windows himalaya by TBC
- iq: HLSL does have a noise function, but unfortunately no hardware supports it, yet. You can, however, use it for non-realtime texture shaders.
What i do is basically this:
Generate a 1024x1024 heightmap texture using a texture shader and raymarch from the camera to the landscape surface. Approximate the gradient at the intersection point using some tiny differences and use it for lighting. Use the height of the intersection point in combination with a texture to determine if it is going to be a snowy or rocky pixel. Reuse the raymarching to determine if the pixel is in shadow. Important step: apply some dithering to make up for the imprecision of the raymarching. If there was no intersection with the landscape, intersect the skyplane instead. Add gradient to sky. Add exponential fog. Add boring camera movement, music, etc. Besides, the other half of the story is the actual compression to get this below 1k, but I will not bore you with the details :)
trace and others: sure, having better colors, cameras, music, etc. would be sweet, but then something else would have to be sacrificed. What should that be then? Clouds, shadows, fog, compatibility? I think, I have made a pretty good compromise. I do realize that one would probably have to be a 1k/4k coder to appreciate this.
pan: Do you have the directx end-user runtime? (see nfo)
Optimuz, src: Everything is written in x86 assembly and HLSL. I wouldn't want to give up byte-level control when writing a 1k. You might be able to write something almost as small in C, but it will take a lot of hacking and coersion of the compiler, and even then you will probably never make it generate just the right code. Writing the assembly code directly seems much less frustrating to me.
Thanks for the otherwise nice comments :) - isokadded on the 2008-06-09 16:20:14
- 1k Windows himalaya by TBC
- parapete: the safe version is only included because it is required by the rules. I don't consider the 1k version unsafe and I doubt that anyone will need to run the safe version.
keops and others: are you using recent drivers? in either case, i will have a look at it soon, promise. - isokadded on the 2008-06-07 01:54:00
- 1k Windows himalaya by TBC
- video
- isokadded on the 2008-06-06 22:22:28
account created on the 2003-02-16 23:09:29