How do i do this ? :)
category: code [glöplog]
I've been interested in how the 3d "MYTH" logo and the spiral
is done in the MYTH Republic Commando installer.
http://pouet.net/prod.php?which=59792
Could someone explain how the "vectorball" (i think that's what it's called) effect with the chinese chars are done ? (and maybe give some src to look at)
thanks
is done in the MYTH Republic Commando installer.
http://pouet.net/prod.php?which=59792
Could someone explain how the "vectorball" (i think that's what it's called) effect with the chinese chars are done ? (and maybe give some src to look at)
thanks
Well that's pretty straight forward (depending on how you want to implement it). One possibility: Just render a lot of screen aligned quads along the 2D projection of the lines of your rotating 3D object. Linear algebra might help you on your way.
aint that just blurred copies of former frames slowly fading? and if you set the rotation center for your objects correctly and adjust the fade of older frames accordingly, it should all come from "alone"? http://www.youtube.com/watch?v=dyLRwHvnQBs
yes of course it's le very simple slow fade of previous picture :)
instead of clearing the screen before drawing the new frame, just "fade off" the screen and display the next frame over.
I use the very same antideluvian demoscene technique on this effect (click on the screen to maximize the effect).
source code available when you click on "view source" ;)
instead of clearing the screen before drawing the new frame, just "fade off" the screen and display the next frame over.
I use the very same antideluvian demoscene technique on this effect (click on the screen to maximize the effect).
source code available when you click on "view source" ;)
^ Oh boy, wouldn't that just be so cool as the background on a desktop.
rez : niiice!
You have fucked my mind now rez!
I don't really know an html or java but I take I take it changing ratio and speed are pretty self explanatory.
If I change the values of
I don't really know an html or java but I take I take it changing ratio and speed are pretty self explanatory.
If I change the values of
Code:
that's the star colours?context.strokeStyle='rgb(255,255,255)';
Quote:
yes of course it's le very simple slow fade of previous picture :)
instead of clearing the screen before drawing the new frame, just "fade off" the screen and display the next frame over.
I always for GPUs wondered, why they do not have this "in-hardware". That is, just "average" two rendered frames, with hw optimization, at top speed. Same for full-screen antialiasing.... why is there no in-hw "almost-for-free" way to do this? After all, didn't good old TV screens do this for free? But now we need hundreds of mhz GPUs to achieve such "stonage" effects?
If i were conspirational or sarcastic, i'd ask "do they do such basic things so inefficiently, just so that we have to buy ever newer GPUs to throw ever more inefficient hw power at doing something 40 years old?"
Having something "in-hardware" makes the GPU bigger and more expensive. Why make it a special feature if you can just as easily implement it yourself, that is the beauty of the programmable pipeline.
You remind me of someone who argued why we see films in an old TV with amazing explosions and lot's of action and we need a better CPU to pull those graphics on PC.
myka: because it's framerate dependant.
mykla, Gargaj: Also because it would end up effectively costing the same by doing it "in hardware"; you still need to read the two framebuffers from memory.
kusma: ... or alphablend one over the other in which case ALU-equipped embedded framebuffer memory helps. :)
Doesn't change anything of course. I too fail to see how a "native" implementation could possibly be faster than a one-line pixel shader.
Doesn't change anything of course. I too fail to see how a "native" implementation could possibly be faster than a one-line pixel shader.
kb_ you couldn't really write such a one-line pixel shader in 2005. That could be a reason.
Another reason to make it a 'pixelbuffer' effect (apart from everyone being able to run the cracktro then, I mean) would be 4 da window border trix ;P
zorke, simplified: objects rendered with a 3D->2D transform into a bunch of cycled buffers that get decreased opacity. Current drawn-into buffer goes front and gets 100% opacity.
If you don't really know what that means you have a few months of basic but fun coding exercises in computer graphics ahead of you. Nothing is more fun than learning and making things move, so cherish that time, that time is the best of times in a coder's life :)
Another reason to make it a 'pixelbuffer' effect (apart from everyone being able to run the cracktro then, I mean) would be 4 da window border trix ;P
zorke, simplified: objects rendered with a 3D->2D transform into a bunch of cycled buffers that get decreased opacity. Current drawn-into buffer goes front and gets 100% opacity.
If you don't really know what that means you have a few months of basic but fun coding exercises in computer graphics ahead of you. Nothing is more fun than learning and making things move, so cherish that time, that time is the best of times in a coder's life :)
if you start such a thread here my answer to you is:
"YOU don´t do this at all! EVER!"
"YOU don´t do this at all! EVER!"
NEVER!
as kb said: its a oneliner in pixelshaderCode, needing just two Textures (lerping/mixing them in the shaderCode-line), the C++-Code behind this is a lot bigger, you need to initialize them two textures, feed them into the pixelShader and display one of them on the Screen! C++-Code is about less than 30 lines of code, though! atleast if you lerp(), which is dX ;)
A GLSL version of the star thingy, but I decided in the end not to use backbuffer trick.
http://glsl.heroku.com/e#5891
http://glsl.heroku.com/e#5891
my name for it is: TimeBlur!
yours?
I was reading the thread with the GLSL sandbox open and had the backbuffer blend going, but then I thought it would be interesting to show how this effect can be done without.
Its not fully formed, but you get the idea.
Its not fully formed, but you get the idea.
Still would have been nice with the blur, if glsl heroku allows for past frames...
Just change this
gl_FragColor = vec4(c*d);
to this
gl_FragColor = texture2D(backBuffer, p+mouse)*.8 + vec4(c*d);
But the point is that time streaks can be emulated without a backbuffer blend.
gl_FragColor = vec4(c*d);
to this
gl_FragColor = texture2D(backBuffer, p+mouse)*.8 + vec4(c*d);
But the point is that time streaks can be emulated without a backbuffer blend.
Makes me wish shadertoy has this framebuffer sampler too.
I hope iq fixes that shader compile bug tho first.
I hope iq fixes that shader compile bug tho first.