Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

nes8bit

Quake3 Curves

This topic is 6685 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

<-- Hey Look! I''m a Martyr??? How do Quake3 curves work? I am about to attempt to implement them, but I would like to know how Quake did them first. I know about editing Quake1/2 Half-Life, but I don''t know how to use ID''s editor.

Share this post


Link to post
Share on other sites
Advertisement
Quake 3 uses something called quadratic bezier patches, don''t ask me how that''s done, because I don''t know.

If you want to read about curves and such, take a look at http://members.xoom.com/3dcoding/curves/index.html.

What I''m wondering is if they don''t use polygons in the final rendering of the scene anyway. You could see that some curved objects in Q3Test1 was just plain polygons when looking at them in wireframe mode. The whole NURBS system is also rendered using ordinary polygons, it''s just to make modelling easier.


============================
Daniel Netz, Sentinel Design
"I'm not stupid, I'm from Sweden" - Unknown

Share this post


Link to post
Share on other sites
You can check out my curved surface implementation at
my website.

I use the Genesis3D engine and parts of my framework, so you''ll have to decode anything that seems unfamiliar.

You MAY NOT use my code unless I give you express permission, so before you go off selling some awesome game using my code, ask me first.

Aside from that, enjoy the learning experience.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Quake 3 uses quadratic bezier curves indeed.
The curve has been build up by patches.
Because you are dealing with quadratic bezier curves, your patches will be 3x3, but some control polygons (containing the control points of your patch) contain 5x5 or 9x7 points for example.
This is no problem, just divide them into 3x3 patches.
So when you have a patch of 7 points in the u direction, make patches like this:
1,2,3 3,4,5 5,6,7

There is a article on Gamasutra which explains you how these patches work.
When you can render such a patch, you should have your curves working in no-time.

I hope this helped a bit.

- John van der Burg
Programmer of Oxygen3D / Mystic Game Development
http://www.mysticgd.com
http://oxygen3d.net-games.com

Share this post


Link to post
Share on other sites
John - you hang around these boards nowadays too?


#pragma DWIM // Do What I Mean!
~ Mad Keith ~
**I use Software Mode**

Share this post


Link to post
Share on other sites
And while on the subject... Anybody have any good references on the topic of central differencing for bezier patches?

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Actually the page that Spiff recommended is great:
http://members.xoom.com/3dcoding/curves/index.html

This page helped me a lot. I finished implementing curves within a day. Hint: get 2 bezier curves to make one patch.

Like this
==================================
---------- <--Bezier1
/
/
/ <-- Bezier2
/

Share this post


Link to post
Share on other sites
#@)%^&)#(@$% that stupid anonymous posting #$()#@! That was me up there. Also the forward slashes were supposed to be vertical lines. I couldn't correct myself. I thought spiff said this page: http://freespace.virgin.net/hugo.elias/ My mistake. This page is awsome.

Edited by - nes8bit on 4/26/00 6:13:03 PM

Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!