1 (edited by mym 2009-09-25 16:43:35)

Topic: curve : All you ever wanted to know about curve.c!

Okay, following mym's suggestion, I have created a comprehensive document which contains all of the explanations and instructions for the use of the curve program, and all of the various parameters. I started this new thread because the other was riddled with out-of-date information, and (at least slightly) off-topic discussion.

First of all, though, here are the links to the curve.c program: (version 1.9 - updated April 5, 2008)
curve.c - May the source be with you! (v1.9)
old curve.c - v1.8, for use w/ NB 1.4.0.

And the new documentation, which you can dowload for off-line perusal:
curve.pdf - Lots of pretty pictures!  ~1 MB in size
Source: curve.odt ~1.2 MB in size

That same documentation contained on the Neverwiki (Thanks to shino for putting it up!) :
wiki link
(This document should always be a little more up to date, so it is the recommended resource.)

If you find any errors in my documentation, feel free to point them out here. If you have any suggestions for other features for the curve program, please also post them here. I hope you guys find this to be a useful document that will help you in creating some very fun architecture for new Neverball levels!

EDIT: I thought it might be interesting to see the development history of curve, so I assigned version numbers and made a list! Here it is (with American date format tongue) :
v1.9 - (4/5/2008) changed output from integers to doubles, for precision. (for use with NB svn/1.5+)
v1.8 - (1/15/08) cleanup of UI code, added "d" for default : contributed by paxed
v1.7 - (2/11/07) added random curve generation, either singly or in a 4x4 grid.
v1.6 - (6/17/06) added auto-texturing capability, and finished the curve.pdf guide.
v1.5 - (12/17/05) added a basic user-interface - a series of questions to create the curve
v1.4 - (11/25/05) added possiblity of different starting/ending radii, and the constant thickness option
       - got rid of the useless non-sine wave hill option.
v1.3 - (11/18/05) fixed the "final lump misaligned by 1 unit bug", which wasn't really a bug, but rather a "feature"
v1.2 - (11/12/05) added inner drop, outer drop, and hill options. (and a useless non-sine wave hill option)
v1.1 - (10/27/05) added thickness and slope options.
v1.0 - rlk's original

2

Re: curve : All you ever wanted to know about curve.c!

Great Work Dave!

Currently Playing:
Celeste and Electronic Super Joy

3

Re: curve : All you ever wanted to know about curve.c!

Inspiring stuff!

Cheese
==========
cheesetalks.net

4

Re: curve : All you ever wanted to know about curve.c!

Thank you very much Dave.
Once the twist program will be done, I promise you to attempt to do a great (and hard) level using all your tools !

5

Re: curve : All you ever wanted to know about curve.c!

A thing which remains a pain when using rlk's or your's curve tool is to set textures to outside faces.
I wondering if you could add another parameter - the texture name - which could be automatically applied for such faces ?
This could be a great time saver for level designers smile

6

Re: curve : All you ever wanted to know about curve.c!

Just a note, the currently posted document is an updated version to the email one I sent to a few people earlier. If you have that version, I reccommend downloading the newer one. There are a few typo fixes, and lots of internal links (any time you see <xx> for a setting, you can click it to go to that section.)


mym, that is an excellent idea! You're right about it being a real pain trying to texture only the "outside" faces of some of the these curves... I'll look into it. I think I could easily add yet another paramter <tx>, for texture name.

Thanks for the comments!

7

Re: curve : All you ever wanted to know about curve.c!

Upon further reflection, I have decided that a simple <tx> added to the argument list would be problematic for many reasons, and would not provide an adequate level of functionality. For instance, often people want a different texture on the bottom versus the top, or a different texture on the sides.

So, I'll think I'll add the feature of curve looking for a "textures.txt" file, which will contain the user-specified textures for top/side/bottom. Of course, if it's not there, the default - invisible - will be used.



Note to self: add in this info in .pdf, along with info on re-using .map name issue (radiant caches imports), and the comment header will contain full string of variables, which may be too much(lump doubling somtimes unnecessary.)

8

Re: curve : All you ever wanted to know about curve.c!

I'll start the wiki version wink We'll need pictures used in the pdf to add in the wiki, if you can mail them it would be great ^^

9

Re: curve : All you ever wanted to know about curve.c!

No problem, shino. I'll mail them tonight, when I'm at home.

Thanks for being willing to tackle the wiki part. Hopefully, it will be easy to cut and paste most stuff.
I can email you my original OpenOffice document as well, if that would make it easier to copy stuff over.

10

Re: curve : All you ever wanted to know about curve.c!

I've started the wiki doc, and added the link in the first topic wink I'll add the pictures when I get them, and see how to enhance the wiki syntax to get the best result on the wiki smile

11

Re: curve : All you ever wanted to know about curve.c!

Wow!

12

Re: curve : All you ever wanted to know about curve.c!

Your little curve program has evolved somewhat, eh, rlk?

13

Re: curve : All you ever wanted to know about curve.c!

Dave, in the description of your tool, I think you should specify "round structures" (or something like this) instead of "structures".
Shino, in the level_creation page, the link could be more explicit. Something like "the Curve tool: creating round structures"

14

Re: curve : All you ever wanted to know about curve.c!

Okay, good point, even though it is sort of implied by the title "curve"...

I'll update that in my doc when I release the next version of curve.c . (automatic texture placement!)

15

Re: curve : All you ever wanted to know about curve.c!

Auto-texturing is now available. Please see the updated .pdf file (and the soon to be updated wiki... shino?) for details.

Find any bugs? please report them here.

16

Re: curve : All you ever wanted to know about curve.c!

Dave wrote:

Auto-texturing is now available. Please see the updated .pdf file (and the soon to be updated wiki... shino?) for details.

Find any bugs? please report them here.

I did some tests and saw no problem, texturing is ok and easy to use, many thx Dave smile

17

Re: curve : All you ever wanted to know about curve.c!

Wiki doc updated wink

18 (edited by Dave 2006-06-18 12:58:10)

Re: curve : All you ever wanted to know about curve.c!

Thanks, guys. I'm glad it's working well. If you have any other good suggestions like that one, let me know.

oh, shino, could you also update the first section of the wiki to include the curve -textures info from the 1st page of the pdf? Thanks! (Also, I just changed, "four ways to use" to "five ways to use", so could you re-load my .pdf that's pointed to by the wiki? Much obliged!)

19

Re: curve : All you ever wanted to know about curve.c!

It's done Dave, sorry, I've forgotten this part wink

20

Re: curve : All you ever wanted to know about curve.c!

Excellent. My only other suggestion for the wiki, is to have a complete list of parameters at the top, with links to the various descriptions, so people can have an easy reference line for the order of parameters, etc. (But it probably really doesn't matter.) Thanks for putting all of that stuff on the wiki page.

21

Re: curve : All you ever wanted to know about curve.c!

But the TOC contains the list of all parameters, you think it's not enough ? Or maybe I don't understant your remark :s lol

22

Re: curve : All you ever wanted to know about curve.c!

I think it would be best for people not to have to scroll down to be able to jump to the topic they want.
As it is, people have to scroll down a bit, just to find the "quick list".
Plus, the list of <r0> <r1> ... across the top helps remind people of the order that the parameters go in, moreso than the vertical "quick list" does.

I might be a little too picky, I guess.

23

Re: curve : All you ever wanted to know about curve.c!

I put the "Parameters list" chapter at the top, is that what you mean ? wink

24

Re: curve : All you ever wanted to know about curve.c!

Nope. That's not what I meant. I think that should go back.
I have only been referring to the line of parameters, which you find at the top of the curve.pdf file.
specifically : <r0> <r1> <n> <a0> <a1> <t> <r2> <r3> <s> <id> <od> <h> <ct>
since it doesn't appear anywhere else in that manner(in it's entirety) in the rest of the doc.

I guess I could just do it myself! I think I must have wiki-phobia, or something.

25

Re: curve : All you ever wanted to know about curve.c!

Ok I got it, sorry ^-^'

That's right I skipped this line when I wrote the wiki, because I thought the TOC is here so it's not useful to repeat the list of paramter at the top, but you're right, we can add it smile