Home About Media Download Pre-Order Chat Blog Forum

Forum: General Discussion: functions in the engine?


Unicornkill
2010/01/16 14:30
What has been included, will be?
destructables?
climbables?
all kinds of rotations(around own centre, around a second prim,...)
bobbing(very important for water etc)
moving
death on touch is already included I found out. :p
what kind of triggers?
how will you link stuff? by typing the name of it target or trigger or with the whole select, select link sh*t?
I'd prefer we could make some sortof filesystem with in the folders the objects. then we can use the folders as things to modifie.
eg: we make a window with a few pieces. each piece goes in a folder, the folder gets the destructable function.(so each piece can be destroyed seperate.) then we have a couple of those window-folders and some other objects in the train folder. this folder then gets the move function with a link to a folder with the trigger in it, that is placed within the train folder. so we get a train with destructible windows, that moves when u get the trigger to move it.

train folder with move function on trigger(various objects, window folders with breakable(glass objects),controls folder with the trigger(objects))

basicly it would use inheritance...

this is an simple example but making this in tce would already have been a pain. imagine a bird who's wings flap, tail flaps seperately, makes a sound now and then, rotates around something and meanwile bobs a bit... now imagine you want to add some extra objects to the wings :p
with gtk you'd have to restart. my system, u just add it to the right folder...

dunno if you could program this in what you have already or if you have a better system. I'm quite curious...

PS: I just love functions :p makes a map come alive and stops ppl from being too triggerhappy on every pixel that changes color.
jezek2
2010/01/17 16:00
It has hierarchical entities. In editor you'll be able to create entities geometry using brushes and static models (all the geometry will be converted into dynamic model under the hood). In the game code you have also ability to spawn normal dynamic models.

You'll be able to create custom entities and script anything using Java, including arbitrary usage of physics engine. For each custom entity you just create Java class and write editor parameters to XML descriptor. In editor, linking with other entities is done directly by selecting, no names required (but you can name stuff).

Of course it will take some time to get there, so static map creation will be available sooner than this dynamic functionality.
Unicornkill
2010/01/19 14:39
Lucky me, I already know javascript :p
to bad about the linking tough...
but I guess it's easier for a non-programmer to work that way..
jezek2
2010/01/19 16:08
It's normal Java, not Javascript, they're quite different languages, there is just some syntax and name similarity, but that's all :)

Can you elaborate more why you think it's better to have explicit names than direct linking?
Unicornkill
2010/01/20 09:06
Well, as stated above, direct linking can be a pain if you want to tweak an existing scripted/functioned object.
If you want to add a mesh to the object you would have to delink and relink, adding all modifiers again. With explicit names you would simply give the mesh you add the same name as the part of the object you want it to be in.

In terms of overview; this would make it simple for elaborate functions and scripts linked to several objects to be understood by ppl with less analytical skill. Also if you have official maps or have someone else check over your scripted objects, this would make it easier for them to do so. It would be like the difference between programming in notepad vs netbeans...

Obviously you could still work with direct linking, this would just autoname the first and second groups of meshes, and add the link between them. Maybe something in the options wether it asks you for a name or makes one up by itself.

A nice feature would be a handy dropdown menu with a list of all the objects and their subobjects, making it easy to find the right stuff.

And it is the normal java I know, don't know why I added script.
jezek2
2010/01/20 16:55
Hmm I have feeling that you have something other on mind than I want to implement. Your description sounds more like object grouping, that's not needed as objects are already in hierarchical structure in editor, including dynamic hierarchical CSG operations.

Let me describe in more detail what I mean with linking. The editor is designed to be game/engine agnostic (it has support for Q3 engine too). So any entity types for particular game/engine are described in XML descriptor. There is name for each entity type (like Spawn or PointLight). You can also define various parameters for given entity type with different data types (such as string, color, number, vector, etc.). These are presented in properties for given entity (along with option to convert to different entity type). You can also add any arbitrary parameter in editor if you wish (mostly usable for Q3 engine than for RF). One of the data types I want to add is Entity, this will allow to choose different entity directly from main entity tree or visually. Then in Java side the entity class instance is automatically created and populated with values from the editor and in case of Entity data type it provides direct reference to that entity.
Unicornkill
2010/01/20 20:34
i see

and the linking itself, is it simply, select select ctrl-L?
jezek2
2010/01/20 23:06
No, you're working primarily around the object tree and insert brushes, models, etc. there. You can always reorder/reparent objects as you wish. It's done in a fast and intuitive way I would say :) Years ago I started working on the editor because I was really disappointed with currently available brush oriented editors (such as GTKradiant). It has some concepts inspired by an old QuArK editor which I used when I was mapping for Half Life 1.

The tree is great for dynamic CSG operations where you can selectively cut into some brushes but not to others, and the dynamic part is very handy when you want to eg. move window or a complex hole little left or right, or completely remade it different way.
Unicornkill
2010/01/21 20:52
I remember quark, I see what you mean now with the object tree. The tree itself isn't much unlike my general setup. It will undoubtably be perfect :p

I wondered where I used cutting into brushes, now I remember; counter strike :p

God I totally forgot about that. Can't believe it :D

Reply

Name:
Content:
Confirmation code:
 
  (type the letters shown in the picture)


Copyright © 2007-2012 ADVEL s.r.o. | Privacy Policy