Sonic and Sega Retro Message Board: SonicGLvl v0.4 for PC - Sonic and Sega Retro Message Board

Jump to content

Hey there, Guest!  (Log In · Register) Help
Loading News Feed...
 
Page 1 of 1

SonicGLvl v0.4 for PC GUI overhaul and new objects

#1 User is offline Dario FF 

Posted 13 December 2011 - 10:17 PM

  • Tech Support Hotline
  • Posts: 924
  • Joined: 03-April 10
  • Gender:Male
  • Location:Mar Del Plata
  • Project:SonicGLvl
Current Version 0.4: Check the last post for update information

For the sake of not pestering the Generations resource thread for the ones who actually CARE about resources there, I'm splitting off the discussion of my editor in here, and also sharing all the information I researched so far in case anyone wants to try it on their own. Also, the editor is pretty much feature complete at the moment when it comes to level data format and templates so far. What's needed at the moment is raw models, templates tweaking, lots and lots of game content that needs ripping and being distributed with the editor.

SonicGLvl - Visual 3D editor for level objects layouts


Features:

  • Loading XML or AR.00 files directly as levels.
  • 3D camera controls and edition.
  • Customizable model previews of in-game objects, can be fully extended later using a template database.
  • MultiSetParam array support for creating copies of a single object easily.
  • Ogre3D engine ensures a pretty good performance all around.
  • Saving back directly to the AR.00 or XML files, ready to import straight to the game.


Hosting and Downloads

I will host SonicGLvl on Google Code, although I haven't opened the source code yet. SVN will allow me to keep a common database of the objects so far ripped out. Also, this would help people to not have to download a whole new version of the editor, just for adding a simple template. Using SVN update, you can just download the latest changes.

SonicGLvl on Google Code.

Checking out the latest SVN(for use for anyone who was the tools):
svn checkout http://sonic-glvl.googlecode.com/svn/trunk/ sonic-glvl-read-only


Also, for the users who obviously ain't gonna download SVN tools just to check out the program, I will upload stable "snapshots" of the repository periodically. In other words, you will be able to download the latest uploaded version on the Downloads page.

Important notes:
  • Do not use fullscreen mode or you'll be locked out of any "File Open" dialogue Windows pops up.
  • You can limit the FPS turning VSync on
  • If it looks like crap, you can put some FSAA to improve the looks
  • Look over at the help menu for a "Quick Overview" so you're not completely lost with the controls.
  • There's some focus issues with the windows. So make sure of what you click.


Who can contribute to SonicGLvl
The program needs lots of content ripping at the moment. Obviously I will work on it when more time frees up sooner or later, but all help is appreciated. Here's what can be contributted by simply posting here, or even comitting to the repository. Note that I'll need your google account name for adding project members. You can create a google account with any e-mail you currently have.

What you can contribute:
- Models and textures(models preferrably compatible with 3DS Max 2012)
- Converted models: Processed models with materials ready to be imported into the editor. This includes the .mesh files exported and .dds textures, plus the .material script.
- Templates (.xml): Refer to the technical info later on.
- Ideas & feature suggestions are welcome.

How to contribute?
- Post here.
- Request here to be added to the repository's project members so you can contribute using SVN tools.
- Or just PM me anything.

Tools needed for ripping
Currently SonicGLvl is using Ogre3D engine to provide display previews. Ogre3D provides enough features and a pretty fast performance for the needs of the editor, and there's no plans of changing the engine. Plus, it's cross platform in the event that SonicGLvl goes that path in the future.

- OgreMax Exporter is the plugin I'm currently using to export all models to the .mesh format Ogre uses. Do note that OgreMax supports 3DS Max, Maya, Softimage/XSI, and covers a big array of the versions of them. There's a commercial version, but the non-commercial version works fine for our purposes even with the restrictions. Non-commercial version of the plugin for 3DS Max.

- Darkspines' script with a slight modification to change the naming of the materials created is the one I'm currently using to import game's models. The name modification is because OgreMax exports the materials named as the maps in 3DS Max.

- Any 3D editor that's compatible with the above should work for exporting models into the editor. At the moment you can just use 3DS Max 2012 for free with a student 3 year license.

Screens & Videos
Posted Image
Posted Image

Some simple modifications of levels I made in the past with the editor:



Future plans:

- Add needed features like Undo/Redo.
- Support editting additional vectors from the object with another 3D point in space.
- Support loading level geometry when we got the chance to export it. Editting in blank space ain't fun.
- Add support for editting easily stuff like Lines, spline paths, etc.

Tech Info dump
So for the ones currently researching into the game's objects as well, here's all the info I got so far.

AR.00 Files
Sonic generations seems to use two different kinds of .ar.00 files for loading an stage, appart from the geometry in the /Packed folder.

- The file with a '#' (e.g. #ghz100.ar.00) is likely to be the "info" file of the level. The file size is small most of the time, and it holds all the data regarding object placement, as well as some physic files. While "Stage.xml" seems to refer to which files are the ones holding level data at the moment, it's safe to assume that all xml files with the prefix setdata_ are object level data. Mostly because "Stage.xml" seems to have a broken format sometimes, so it isn't really reliable.

- The file without the # holds the geometry, textures, and other stuff of the custom objects from the level. You can look into these files if you want to rip any custom models.

- These setdata_ xmls are completely human readable. While they can be editted by hand to add or move any objects you want, it's better to rely on the editor for the task. Mainly because using a 3D preview is way more intuitive.

Objects
- All objects of the level will be placed under the <SetObject> node in all these xmls. Each entry added to the file will appear as a whole new object in-game. Do note that most of these objects have a unique ID, set by a <SetObjectID> node inside them. Clashing IDs ingame are not something you'd like to see, so no objects should EVER have the same ID.

- The level files seem to have a special option built into the game to generate copies of itself across different positions. These are called <MultiSetParam> nodes, and each of these hold various <Element> nodes with their own <Position>, <Rotation>, and <Index>. There's also a <Count> node for the total ammount of copies. This <MultiSetParam> makes it easy to generate say, a line of 40 rings in a perfect pattern. While there's other parameters such as <LineBase>, or <Interval>, this only seem to be relevant to whatever editor SonicTeam used to make the game, because they have no relevance whatsoever apparently if modified ingame. What matters is the individual positions and rotations in each <Element> node, and this is handled by the editor already.

- It's considered pretty much globally for ALL objects to have their own <Position> and <Rotation> nodes. Coordinates between the editor and in-game match perfectly. You can consider the X-Z plane as the "floor" plane of the game, while the Y axis represents the Height.

- The nodes inside each object never specify what kind of variable they are. That's where the concept of templates comes in. SonicGLvl HAS to have a way to know what variables an object normally has, and what kind of variable they are.

Templates are simple XML files located in the editor's folder. They are normally built in the following way:

<?xml version="1.0" encoding="utf-8" standalone="no" ?>
<MyObject>
    <MyVariable1>bool:true</MyVariable1>

    <Position>
      <x>double</x>
      <y>double</y>
      <z>double</z>
    </Position>
    <Rotation>
      <w>double</w>
      <x>double</x>
      <y>double</y>
      <z>double</z>
    </Rotation>
    <SetObjectID>integer</SetObjectID>
    <Mesh>object.mesh</Mesh>
</MyObject>


Each node represents the name of the object's attributes. Instead of writing a normal value inside though, you are supposed to write the type of variable it is. The editor currently supports the following:
string: a name
double: decimal number
integer: self-explanatory I guess
bool: boolean value, will write either "true" or "false"

Any value after ':' will be considered the "default" value with which the object is created from the editor's menu. For example, <CastShadow>bool:true</CastShadow> means that true is the default value for that attribute.

Note that it supports attributes inside other nodes, like <Position> and <Rotation>.
Also of notice, <Mesh> isn't an actual attribute, but a reference for the editor to know what model to use in the preview display.

Here's an example for a game ring:
<?xml version="1.0" encoding="utf-8" standalone="no" ?>
<Ring>
    <GroundOffset>integer</GroundOffset>
    <InitDisp>bool</InitDisp>
    <IsCastShadow>bool:true</IsCastShadow>
    <IsLightSpeedDashTarget>bool</IsLightSpeedDashTarget>
    <IsReset>bool</IsReset>
    <Position>
      <x>double</x>
      <y>double</y>
      <z>double</z>
    </Position>
    <Range>double</Range>
    <ResetTime>double</ResetTime>
    <Rotation>
      <w>double</w>
      <x>double</x>
      <y>double</y>
      <z>double</z>
    </Rotation>
    <SetObjectID>integer</SetObjectID>
    <TreasureSearchHideType>integer</TreasureSearchHideType>
    <Mesh>ring.mesh</Mesh>
</Ring>


- Another option provided is the <AltMesh> reference. Some objects will change depending on the attributes they have, so the best way to represent that inside the editor is just changing the model displayed.

For example, if you would want a red spring to be displayed instead of a yellow one when the power of the spring is above 30.
    
<AltMesh>
       <Condition>FirstSpeed >= 30</Condition>
       <Mesh>spring_classic_r_01.mesh</Mesh>
       <Mesh>spring_classic_r_02.mesh</Mesh>
</AltMesh>


This is purely for the editor's reference, it doesn't change anything in the game.

<Conditions> are single line statements. You can add as many conditions as you want. There's also a custom string value, LevelPrefix to check what level you're currently working on. For example, ghz for Green Hill zone, cpz for Chemical Plant. Same way as the game's files are named.

- Yet another option provided in the case it's needed, <MeshScaleX> (or Y, or Z) will allow you to change the preview model's scale using an attribute of the object(for example, <Width>). It also has a custom multiplier attribute. Here's an example for the object <OnewayFloor>, which depends on <Width>, <Height> and <Depth> to be represented accurately inside the editor.
    <MeshScaleX multiplier="2.0">Width</MeshScaleX>
    <MeshScaleY multiplier="2.0">Depth</MeshScaleY>
    <MeshScaleZ multiplier="2.0">Height</MeshScaleZ>


- The editor will search for any matching objects with the templates it has, and will write any changes made. It will also add any new objects, as well as erase any deleted ones automatically. It's totally safe and compatible so far to open and save a level and import it into the game directly so far, given that you haven't tampered too much with object's attributes that you don't know about and make the game crash.

- The editor supports reading an XML and dumping all types of detected objects manually, using the default "unknown.mesh" as display model. It's recommended to tweak these files dumped manually.

TL;DR; Editting the levels is way easier than you ever thought.
This post has been edited by Dario FF: 05 January 2012 - 04:19 PM

#2 User is offline Dario FF 

Posted 17 December 2011 - 09:07 PM

  • Tech Support Hotline
  • Posts: 924
  • Joined: 03-April 10
  • Gender:Male
  • Location:Mar Del Plata
  • Project:SonicGLvl
Update
+ Fixed the XML dumper for reading as much attributes as possible from the XML with objects of the same type.
+ Nearly 30+ objects added from Act 2 Common like springs, dash/rainbow rings, jump/trick boards, etc. and some common elements from GHZ.
+ Added some more models for stuff like sounds, collisions, etc.

You can get the latest snapshot from the Downloads page, or use SVN update.

My intention right now is to get GHZ Act 2 with a pretty accurate visual representation of some objects at least.
Posted Image

Also, Falk reminded me of those Unleashed DLC Hard acts on the other thread, so for kicks, I did a lame and short edit of the first section of GHZ Act 2 to make it harder to speedrun through.


I like my troll dash rings after the spike mini-tunnel. :eng101: This helped me find a nasty bug in a template though, which I fixed.

I can't wait til Stage geometry rips are released. I'll be so happy to do edits later with that instead of a grey background.

#3 User is offline Chimera 

Posted 18 December 2011 - 01:15 AM

  • I'm not a furry.
  • Posts: 798
  • Joined: 04-October 10
  • Gender:Male
  • Project:TOO MANY. BUT ONE LESS.
  • Wiki edits:5
I think your dash pannel's rotation settings are a bit off :V

Other than that, pretty awesome. My only complaint is that, since we have no actual geometry to look at, and some of the objects aren't even relevant to gameplay mechanics (such as, particle effects everywhere and etc), it can be a little visually jarring.

Here's a suggestion! If you can manage to do this, maybe draw a spline curve for Super Sonic's path to give a general sense of direction through the stage? That is, until the level exporter gets released of course.

Another thing: maybe a filter setting. You know, so you can filter out cameras and/or physics-effecting objects so you can see JUST the standard intractable objects, such as enemies and platforms. That'd be neat :V

EDIT: Also for the wooden bridge (even though I doubt anyone would make one anyway), why not for "numwood" your editor draws out wood pieces?

EDIT 2: Another thing... Some things like ChangeVolumeCamera and other things that have a collision "bubble" (or rather, box) could use a see-through mesh for added accuracy. For instance, like how you did the one way floor's width affecting its scale, it'd be cool for a transparent box to have its length, width, and height, modified to match up with the boundaries of the object's set collision.

Also, for camera objects specifically, if you can pull this off, it would be badass: why not try making a "preview" button for cameras? As in, your view will shift to the view of the in-game camera once Sonic passes through the camera modification object. Like my previous suggestion, it would really cut down guess and check, as well as, when the level exporter gets released, make much higher levels of accuracy possible!
This post has been edited by Chimera: 18 December 2011 - 02:02 AM

#4 User is offline Dario FF 

Posted 18 December 2011 - 07:18 AM

  • Tech Support Hotline
  • Posts: 924
  • Joined: 03-April 10
  • Gender:Male
  • Location:Mar Del Plata
  • Project:SonicGLvl

View PostChimera, on 18 December 2011 - 01:15 AM, said:

I think your dash pannel's rotation settings are a bit off :V

Yeah, I'm not really sure what's the deal with that. Maybe I'm not passing yet EXACTLY the rotations, but I thought they were fine. Or maybe it's just that the model exporter has some problems? I will have to look into it.

Quote

Here's a suggestion! If you can manage to do this, maybe draw a spline curve for Super Sonic's path to give a general sense of direction through the stage? That is, until the level exporter gets released of course.

Could be added I guess.

Quote

Another thing: maybe a filter setting. You know, so you can filter out cameras and/or physics-effecting objects so you can see JUST the standard intractable objects, such as enemies and platforms. That'd be neat :V

Yeah I considered that. That should be separate files for the types of filters though. It would also help sort the main object menu. Adding something like "Category:Camera" to templatelist.txt should do the trick.

Quote

EDIT: Also for the wooden bridge (even though I doubt anyone would make one anyway), why not for "numwood" your editor draws out wood pieces?

I didn't add that because there was no template option for it yet. I will add it though, something like
<CopyScaleX>
  <Count>NumWood</Count>
  <Interval>2</Interval>
</CopyScaleX>

The X axis would be local and relative to the rotation.

Quote

EDIT 2: Another thing... Some things like ChangeVolumeCamera and other things that have a collision "bubble" (or rather, box) could use a see-through mesh for added accuracy. For instance, like how you did the one way floor's width affecting its scale, it'd be cool for a transparent box to have its length, width, and height, modified to match up with the boundaries of the object's set collision.

That can be achieved already on the templates. Just gotta add:
    <MeshScaleX multiplier="2.0">Width</MeshScaleX>
    <MeshScaleY multiplier="2.0">Depth</MeshScaleY>
    <MeshScaleZ multiplier="2.0">Height</MeshScaleZ>


Quote

Also, for camera objects specifically, if you can pull this off, it would be badass: why not try making a "preview" button for cameras? As in, your view will shift to the view of the in-game camera once Sonic passes through the camera modification object. Like my previous suggestion, it would really cut down guess and check, as well as, when the level exporter gets released, make much higher levels of accuracy possible!

I would love that idea, but I just have no idea what the camera attributes do yet. If someone could play around with them and document them, it'd be easier. Right now I'm quite busy, but I'm already adding all of these into the TODO list since they shouldn't be hard to pull off.

Thanks for the feedback. :)

Also, it seems I need to add support for another kind of attribute. Objects like <EventCollision> have attribute lists like these:
    <TargetList0>
        <SetObjectID>23435</SetObjectID>
        <SetObjectID>23356</SetObjectID>
    </TargetList0>

My templates don't support lists with attributes of the same name yet, so some stuff might be broken when saving. I noticed bugs in the swing at GHZ Act 1, which is managed by an event that calls two of these. Support for lists shouldn't be hard to add anyway, just thought I should point out that don't panic if some stuff in the levels seem broken yet.

#5 User is offline Dario FF 

Posted 25 December 2011 - 05:08 PM

  • Tech Support Hotline
  • Posts: 924
  • Joined: 03-April 10
  • Gender:Male
  • Location:Mar Del Plata
  • Project:SonicGLvl
Update
+ List support for templates. This adds support and will fix A LOT of glitches that might occurr on levels, such as non-moving swings, or any other stuff. Lists are mostly used by objects such as <EventCollision>, and they normally have 2 or more object IDs to call for triggers. For example:
<TargetList0>list:SetObjectID</TargetList0>


will produce in the object
<TargetList0>
<SetObjectID>3213213</SetObjectID>
<SetObjectID>4326213</SetObjectID>
<SetObjectID>543543</SetObjectID>
...
</TargetList0>


As many that you want. These lists are string values by default. I think that pretty much closes adding more parameters for templates, but we'll see what happens when editting other stages.

Inside the editor GUI, adding or deleting to a list is a single string, where each ';' symbol will indicate a new element for the list. So for example, for <EffectNameList>:
Editor: particle1;lightparticle;darkparticle;

Outputs to the XML:
<EffectNameList>
   <Name>particle1</Name>
   <Name>lightparticle</Name>
   <Name>darkparticle</Name>
</EffectNameList>



* Scaled the axis node 3 times as bigger. A proper solution for that is under research. :v:

GUI improvements are planned next for anyone who cares. Although nothing really serious can be done until we got a way to import the level geometry yet.

A new snapshot of this version is available at the Downloads page as always. Happy editting! :)



Also, as a bonus, here's my experimentation with DustArma's idea, AND me adding the CTE trick boards to spice things up in the first part of GHZ act 2.

Link

I had to add the CTE trick board resources to the ghz_cmn file for this to work. And also the custom entry to StageObject.xml in ghz200.ar.00. Other relevant modifications have been stated on the Resource thread already.
This post has been edited by Dario FF: 25 December 2011 - 05:09 PM

#6 User is offline Dario FF 

Posted 05 January 2012 - 03:14 PM

  • Tech Support Hotline
  • Posts: 924
  • Joined: 03-April 10
  • Gender:Male
  • Location:Mar Del Plata
  • Project:SonicGLvl
Update v0.4

+ Dumped QuickGUI, using native GUI now. There's still some issues with window focus, but it's still far, far better than my older implementation of QuickGUI.

Posted Image

+ MultiSetParam now supports using a vector as base for its array copy instead of the world 3 axes. There's still buttons for setting the 6 presets though, as well as using an angle with a degree across the XZ plane(floor).

+ Categories of objects are now available, allowing the user to find much easier the object he's looking for, as well as applying viewing filters to the current categories. This allows for hiding stuff like cameras, particles, so the main view doesn't get cluttered with stuff you don't care about. Categories aren't hardcoded, and they can be added from templatelist.txt.

Posted Image

+ The moving and rotation axis will now scale according to the distance to the camera. This will make the axis' size stay constant on the screen regardless of how far or how close the object is.

+ Templates have a new feature implemented, and it's called <CopyScaleX>(or Y, or Z), which has the following format:

    <CopyScaleX multiplier="value">Attribute's Name to use</CopyScaleX>


This feature allows the editor to generate a number of copies of an object along its local X, Y, or Z axis. The purpose of this feature is for objects like the Green Hill Wood bridge, which depending on <NumWood>, is the relative ammount of wood logs created.

For example, for GhWoodBridge.xml:
    <CopyScaleX multiplier="0.6">NumWood</CopyScaleX>


It will copy itself every 0.6 points for each value of NumWood. NumWood should be an integer of course. For example:

Posted Image

+ Added lots of resources and templates from Chemical Plant Zone and its missions. Also some new common objects. Special thanks to lagstarr for contributing all these models to the repository, and more are about to follow soon as soon as I implement them!(City Escape, Speed Highway, etc.)

Here's a screenshot of Chemical Plant Zone Tails Mission. You can see the custom mission objects here. :)

Posted Image

* Resizing the editor's window will no longer fuck everything up. The toolbox windows will also be moved to the appropiate spot when resizing.


As always, you can get the latest snapshot from the Downloads page, or do an SVN checkout. Happy editting!

P.S: Any old custom templates you created are backwards compatible.
This post has been edited by Dario FF: 05 January 2012 - 03:17 PM

#7 User is offline Felik 

Posted 06 January 2012 - 02:13 AM

  • Posts: 520
  • Joined: 11-April 10
  • Gender:Male
  • Wiki edits:1
Wow it looks like an amazing program with great potential!
Why does it get so little attention?

#8 User is offline Dario FF 

Posted 06 January 2012 - 07:05 AM

  • Tech Support Hotline
  • Posts: 924
  • Joined: 03-April 10
  • Gender:Male
  • Location:Mar Del Plata
  • Project:SonicGLvl

View PostFelik, on 06 January 2012 - 02:13 AM, said:

Wow it looks like an amazing program with great potential!
Why does it get so little attention?


I'd rather not at its current state. It's usable, but it's missing crucial stuff like having SOME way to see the level geometry/collision(which is being researched by 2 other people ATM). I'll work on researching the path format now.

Also, we're barely 2 months from the game's first release. :v:

#9 User is offline Chimera 

Posted 06 January 2012 - 08:41 AM

  • I'm not a furry.
  • Posts: 798
  • Joined: 04-October 10
  • Gender:Male
  • Project:TOO MANY. BUT ONE LESS.
  • Wiki edits:5

View PostDario FF, on 06 January 2012 - 07:05 AM, said:

View PostFelik, on 06 January 2012 - 02:13 AM, said:

Wow it looks like an amazing program with great potential!
Why does it get so little attention?


I'd rather not at its current state. It's usable, but it's missing crucial stuff like having SOME way to see the level geometry/collision(which is being researched by 2 other people ATM). I'll work on researching the path format now.

Also, we're barely 2 months from the game's first release. :v:


when talking to TwilightZoney, he said he didn't see a reason to release the level geometry as of yet, though I forgot to mention this tool in the conversation :v:

And the fact the hacking of this game is so early and is advancing so rapidly amazes me. Sonic's fans sure ARE as fast as him! :specialed:

Anyway, everything looks and sounds badass; will try this out when I get home. Good work as always, Dario. Also FILTERS :specialed::SPECIALED::specialed:

#10 User is offline Twilightzoney 

Posted 06 January 2012 - 09:08 AM

  • Posts: 241
  • Joined: 19-February 10
  • Gender:Male
  • Location:Elgin, IL And Hampshire
  • Project:Unleashed and Generations Stuff and Custom Works
Only problem I see with put in level geometry in, is it might not take a solid huge import into your thing if its a single object since most importers have a limit, besides the fact it will lag out. But if we go the collision meshes to load and be exported that be a different story.

#11 User is offline Dario FF 

Posted 06 January 2012 - 09:29 AM

  • Tech Support Hotline
  • Posts: 924
  • Joined: 03-April 10
  • Gender:Male
  • Location:Mar Del Plata
  • Project:SonicGLvl

View PostTwilightzoney, on 06 January 2012 - 09:08 AM, said:

Only problem I see with put in level geometry in, is it might not take a solid huge import into your thing if its a single object since most importers have a limit, besides the fact it will lag out. But if we go the collision meshes to load and be exported that be a different story.


Aren't the levels just a bunch of instanced geometry across different positions of the level? Ogre has support for world geometry if needed, as well as the SceneManager supporting scenes like it. I wouldn't doubt the power of the engine before we even try. ;) It would be quite useless to have that much geometry inside the editor, but I think it'd be interesting to try.

Damizean is working on the collisions meshes though. Hopefully he'll be lucky, since Havok tools are open on PC and there's plugins for Max.
This post has been edited by Dario FF: 06 January 2012 - 09:30 AM

#12 User is offline Twilightzoney 

Posted 06 January 2012 - 10:02 AM

  • Posts: 241
  • Joined: 19-February 10
  • Gender:Male
  • Location:Elgin, IL And Hampshire
  • Project:Unleashed and Generations Stuff and Custom Works
Well it uses that but you'd have to make a importer yourself then since it doesn't work that way. Since we are importing the meshes as a single object since it doesn't kill max when loading it up.

So yeah you'd have to make your own importer to do that. Since it doesn't work the same. With how things exporter/import into max for this script.

Anyways I'd just wait for Damizean if he continues to work with it.
This post has been edited by Twilightzoney: 06 January 2012 - 10:04 AM

#13 User is offline Chimera 

Posted 06 January 2012 - 10:37 AM

  • I'm not a furry.
  • Posts: 798
  • Joined: 04-October 10
  • Gender:Male
  • Project:TOO MANY. BUT ONE LESS.
  • Wiki edits:5
How about just import the stage into Max and seperate all the seperate elements into different meshes, then save them as seperate objects and import them into the editor? :v:

We'd probably only need world geometry for areas like that one mission in Crisis City where areas that are normally inaccessable suddenly have collision, which would make for more diversity indeed.

#14 User is offline lagstarr 

Posted 06 January 2012 - 04:40 PM

  • Posts: 4
  • Joined: 24-December 11
  • Gender:Male
  • Location:Canada
  • Project:Sonic Generations Multi-format RIPS, "Project Sandbox" Unity 3D

Quote

Only problem I see with put in level geometry in, is it might not take a solid huge import into your thing if its a single object since most importers have a limit, besides the fact it will lag out. But if we go the collision meshes to load and be exported that be a different story.


An Idea to help with the problem about large amounts of memory being used by the editor if some sort of "occlusion culling" was used this way only what is in perspective view is loaded rather than the whole level being loaded into memory. this method is used quite well in the fallout 3 & NV G.E.C.K. editor & Unity 3D

Quote

Aren't the levels just a bunch of instanced geometry across different positions of the level? Ogre has support for world geometry if needed, as well as the SceneManager supporting scenes like it. I wouldn't doubt the power of the engine before we even try. ;) It would be quite useless to have that much geometry inside the editor, but I think it'd be interesting to try.


I think it would be amazing you could extend levels or create new paths and areas but the problem is going to be converting everything and figuring out what piece is what then relabel everything, then sorting and adding to the editor but until there is a way to simply convert the geometry like converting the .model files in 3DS Max or whatever program is needed, I cannot do any mass converts until then

Page 1 of 1
    Locked
    Locked Forum

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users