[QUOTE=Darwin226;31425213]What exactly did he do?[/QUOTE]
He found Tesla Armour.
So i have been learning OpenGL for a while now.
I've worked my way true quite some tutorials and books, the book that everybody here and other seem to have suggested was 'the OpenGL superbible' what annoys me most about this book is that it seems
obsessed with external libraries and helper classes. glut, glew, and the glTools lib that seem to take all the stuff of your back, He comes back on how to do all these things by hand later in the book, but he seems to learn you everything a bit in reverse order compared to other tutorials and books.
[QUOTE=bunguer;31423291]I don't usually post here, I'm more of a lurker I guess.. Seen some pretty cool stuff around here so it's time to contribute with something too :v:
Me and my team have been working on a flash game for a while now and we've just released a quick teaser:
[media]http://www.youtube.com/watch?v=swOv_xfq5q8[/media]
We will be looking for a sponsor in the next few weeks but any comments are appreciated.[/QUOTE]
Remember to use FlashGameLicense instead of writing to each individual sponsor :)
So I found out there's a game development summercamp going on in a nearby town every year.
I'm thinking of joining if not for one problem: Unity
[QUOTE=WeltEnSTurm;31419330]There's no function to post a message to the queue without immediately processing it, if you call it from the same thread.[/QUOTE]
Did you try [URL=http://msdn.microsoft.com/en-us/library/dd145002(v=VS.85).aspx]InvalidateRect[/URL]?
Or set up a timer and update the window at a set interval, because the system really isn't meant for drawing "every frame". What is it that you're trying to do with it?
[QUOTE=Dryvnt;31427138]So I found out there's a game development summercamp going on in a nearby town every year.
I'm thinking of joining if not for one problem: Unity[/QUOTE]
@TheBoff It's not that I'm on the "unity sucks" bandwagon, it's just that I'm currently learning C++ and if I get a year worth of learning I could probably make stuff a lot better than what I could in Unity. And I can't really use Unity for anything later in life.
If I had to use Unity as I am right now, I wouldn't have a problem with the camp. It sounds like great fun.
[media]http://www.youtube.com/watch?v=OdXsj-kWuQw[/media]
[editline]30th July 2011[/editline]
And a closeup:
[media]http://www.youtube.com/watch?v=EyY06IIkTKA[/media]
[QUOTE=Spoco;31427375]Did you try [URL=http://msdn.microsoft.com/en-us/library/dd145002(v=VS.85).aspx]InvalidateRect[/URL]?
Or set up a timer and update the window at a set interval, because the system really isn't meant for drawing "every frame". What is it that you're trying to do with it?[/QUOTE]
I'll try that, thanks.
3D game engine.
[QUOTE=DrLuke;31427771][media]http://www.youtube.com/watch?v=OdXsj-kWuQw[/media]
[editline]30th July 2011[/editline]
And a closeup:
[media]http://www.youtube.com/watch?v=EyY06IIkTKA[/media][/QUOTE]
hoyl fuck [img]http://www.facepunch.com/fp/ratings/winner.png[/img]
Currently working on a draw order "thing" (i'd like to call it a render scenegraph but it's not as complete as that yet).
My current program flow:
1) Gather the entities in view from the visual scenegraph
2) If the entities have changed since the last draw bubble sort them depending on their draw order(the data's nearly sorted anyway) to minimize state changes
3) Foreach Renderstate
{
Call Begin() then call Draw on each entity passing it a pointer to the current renderstate
Each renderstate has a DrawMesh, DrawBuffer, and DrawBufferInstanced method so the entity chooses which of these it uses to draw itself
When all entities using this renderstate are drawn End() the renderstate
}
4)Run postprocess.
This system to me seems... wrong... does anyone have any crit/a link to the "Proper" way of doing it ?
[QUOTE=WeltEnSTurm;31428041]I'll try that, thanks.
3D game engine.[/QUOTE]
Are you purposely not using D3D or OGL? Anyway, those use a more direct method of drawing on the screen. Your way is never going to work well.
[QUOTE=Spoco;31428239]Are you purposely not using D3D or OGL? Anyway, those use a more direct method of drawing on the screen. Your way is never going to work well.[/QUOTE]
What makes you think I am not?
Well I have an interface for winapi (also X11 on linux for that matter) that easily allows me to make a window.
Now it only gets updated when it receives the paint message. But when I'd like to update stuff frequently because I'm for instance drawing with OpenGL, the best way to do it would be to call an update function that just posts another paint message to the win32/x11 message queue, because I don't want to move my whole drawing code to a different function.
[QUOTE=WeltEnSTurm;31428303]What makes you think I am not?
Well I have an interface for winapi (also X11 on linux for that matter) that easily allows me to make a window.
Now it only gets updated when it receives the paint message. But when I'd like to update stuff frequently because I'm for instance drawing with OpenGL, the best way to do it would be to call an update function that just posts another paint message to the win32/x11 message queue, because I don't want to move my whole drawing code to a different function.[/QUOTE]
He's right, It's usually essential from a tools and a game perspective for a game engine to be able to draw to the target OS's native window surface...
[QUOTE=VGS_Devs;31428417]He's right, It's usually essential from a tools and a game perspective for a game engine to be able to draw to the target OS's native window surface...[/QUOTE]
You're doing that anyway, no matter what 'triggers' your draw routine.
I just use paint messages to trigger it and I want to keep it that way, with the possibility to immediately draw next frame again.
[QUOTE=Darwin226;31425213]What exactly did he do?[/QUOTE]
Well, he's the one that will write the "tutorial" part of the tutorial, I'm just writing the code.
I just want to see [url]http://open.gl/[/url] get done, I know a lot of people out there really want it.
If he did the wiki thing I could have already been done.
[QUOTE=WeltEnSTurm;31428569]You're doing that anyway, no matter what 'triggers' your draw routine.
I just use paint messages to trigger it and I want to keep it that way, with the possibility to immediately draw next frame again.[/QUOTE]
No I mean. YOU'RE right :P damn internet tense confusion.
Anybody got their head round my crazy post yet?
How would I make a kind of timer that's synchronized with a server? The problem is that DateTime is based on local time, so it's very unlikely to be exactly the same.
C# btw.
Would this work:
Figure out ping between server and client
Server sends Server Time + Ping to the client
Client then saves that, and keeps adding to it at the same interval as the server.
Get the server time and add half the ping.
[QUOTE=no-named;31428826]How would I make a kind of timer that's synchronized with a server? The problem is that DateTime is based on local time, so it's very unlikely to be exactly the same.
C# btw.
Would this work:
Figure out ping between server and client
Server sends Server Time + Ping to the client
Client then saves that, and keeps adding to it at the same interval as the server.[/QUOTE]
If latency is significant enough to cause issues unless accounted for, you won't have much luck trying to keep two times synchronised to a certain level of accuracy in the first place.
It's a small and easy thing to account for latency and shouldn't make things worse.
The client starts counting its own time (from zero) immediately when it sends the server a time request. The server only responds with its own time. When the client receives the response, it stops counting.
Now the client has the server's response X and its own counter Y. The time currently is approximately X+Y/2, and the time when the request was sent was approximately X-Y/2.
[QUOTE=dajoh;31424681]I'm helping Overv with [url]http://open.gl/[/url], so far I've coded context creation, shader loading, vertex buffers, and vertex arrays.[/QUOTE]
[QUOTE=dajoh;31428571]Well, he's the one that will write the "tutorial" part of the tutorial, I'm just writing the code.
I just want to see [url]http://open.gl/[/url] get done, I know a lot of people out there really want it.[/QUOTE]
I don't know who you were talking to yesterday or maybe I was too busy fighting Legion Centurions, but I'm not aware of you offering to help me? I have no idea what you're talking about.
[editline]bla[/editline]
[code]16:45 - Overv: So, you added me, just because you thought I accepted your offer of helping me with open.gl?
16:45 - Dajoh: No..
16:45 - Dajoh: It went something like this
16:45 - Dajoh: "Hey Overv, would you want any help with open.gl?"
16:45 - Overv: To my understanding, I was helping you create a context
16:45 - Overv: And you sent me your code to review it
16:45 - Overv: And I helped you some more
16:46 - Overv: Completely unrelated to open.gl
16:46 - Dajoh: Uh..
16:46 - Dajoh: No..
16:46 - Dajoh: I thought I was creating the context code for the tutorial..
16:46 - Overv: lol
16:46 - Dajoh: Then you told me to work on shaders, then VBOs
16:46 - Overv: I thought I was helping you create your OpenGL project
16:47 - Dajoh: I thought I was helping you with open.gl ._.
16:47 - Overv: That's why I said "Wait for open.gl to be done before asking questions again"
16:47 - Overv: haha
16:47 - Dajoh: Oh god, this is the biggest misunderstanding ever[/code]
It also depends how accurate you want it, If per second accuracy is what you're after yeah your method will work fine. Could try looking to see how GPS does it's timing?
[QUOTE=Overv;31429250]I don't know who you were talking to yesterday or maybe I was too busy fighting Legion Centurions, but I'm not aware of you offering to help me? I have no idea what you're talking about.[/QUOTE]
It was all just a big misunderstanding, in my defense I was extremely tired yesterday, I had been up for 28 hours or so :v:
It wasn't all in vain though, I did something:
[code]
Overv: You did actually help me refresh my memory a bit and gain some motivation
Overv: Thank you for that
[/code]
Thanks all for the comments, one of the game inspirations was indeed Meat Boy, among other games, but most people will find it quite different, I guess when you make a platform game it will always resemble a game in a way or another :v:
[QUOTE=bunguer;31429568]Thanks all for the comments, one of the game inspirations was indeed Meat Boy, among other games, but most people will find it quite different, I guess when you make a platform game it will always resemble a game in a way or another :v:[/QUOTE]
The three games I thought of were Super Meat Boy (the artstyle mainly) and an interesting mix of VVVVVV and And Yet It Moves :v:
Anyway, here's some more progress on my now unnamed project:
[img]http://dl.dropbox.com/u/11401644/Images/ogl_triangle2.png[/img]
I'm using something similar to "flexible vertex formats" that you use in Direct3D, this is how I use them:
[cpp]
typedef struct
{
float x, y, z;
float r, g, b;
} Vertex_t;
VertexAttribute_t pVertexAttributes[3] =
{
VertexAttribute_Position,
VertexAttribute_Color,
VertexAttribute_End
};
// Creation:
CVertexArray VertexArray;
VertexArray.Create(pVertexAttributes, sizeof(Vertex_t), pVertexBuffer);
// Drawing:
VertexArray.Draw(pShaderProgram, Primitive_Triangles, 0, 3);
[/cpp]
[QUOTE=WeltEnSTurm;31428303]What makes you think I am not?
Well I have an interface for winapi (also X11 on linux for that matter) that easily allows me to make a window.
Now it only gets updated when it receives the paint message. But when I'd like to update stuff frequently because I'm for instance drawing with OpenGL, the best way to do it would be to call an update function that just posts another paint message to the win32/x11 message queue, because I don't want to move my whole drawing code to a different function.[/QUOTE]
Oh, well when someone is doing drawing on WM_PAINT, I assume they use GDI. I don't think it's a good idea to (ab)use it like that, but then again I haven't ever seen it being used like that.
[img]http://dl.dropbox.com/u/11401644/Images/ogl_quad1.png[/img]
Drawing quads, like a boss.
I also added texcoords to the vertex format, gonna implement textures now.
Made a minecraft record decrypter.
Sped up that and my webserver, they are now 392.533333 times faster.
Sorry, you need to Log In to post a reply to this thread.