Whirld 5
38 Comments - 11697 Views
Introducing the Path System
Submitted By admin on 11/04/01
Syn3h, admin, Whirld
This Document originally posted in the "Syn3h" Group
Greetings everyone!
I'm going to take a break from Syn3h development for a week or two to get some other projects back up to speed, but the work I have been doing on Whirld 5 has been too exciting to keep to myself. Please note that Whirld 5, as was it's predecessor, is beta quality software - there is still much I have planned which isn't yet implemented - there is no documentation - and certain components are still a bit rough around the edges. If you can't figure out how everything works, don't worry - future versions will include complete documentation to guide you along.
-Aubrey
Upgrade Instructions:
Whirld 5 has been completely reorganized (to the point that it is now nearing organizational perfection). The safest upgrade path from Whirld 4 is:
- Quit Unity if it is running
- Backup all your work
- Duplicate your Unity project folder using Finder or the Windows Explorer
- Open the duplicate project, and delete the "Whirld" and "WhirldFramework" folders within it
- Start Unity, open the new duplicated project, and import the Whirld 5 package.
- If you have made any customizations to the Whirld Framework, (custom camera logic, the ability to fire projectiles, a custom lobby, etc) you can now copy the sections of code you have customized from your old project to your new one.
If all goes well, you will have a perfectly organized Whirld 5 enabled Unity project when you are done. If something goes wrong, delete the project you created in step 3 and try again.
Note: you shouldn't need to do all this for future Whirld upgrades. It's just that I have tweaked so much, I am sure that everyone with customized frameworks will want to gain the new functionality.
What's New:
- FRAMEWORK: Game controller panel now snaps elegantly to the left and right edges of the screen. Also solves the jittering problem on small viewports
- FRAMEWORK: Now totally modularized - allowing you to load the framework into any scene as the game is playing. This now happens automatically, allowing you to playtest a scene as you are working on it by clicking the "Play" button in Unity. That's right - there is now no need to switch to the controller scene first every time you want to test your world. Cool idea, Eric!
- New "Whirld" Unity editor menu, which contains organized links to everything the library has to offer
- New "Whirld Manager" editor window, which provides instant access to everything Whirld has to offer. The "_Whirld" controller's inspector panel now consists of nothing but a link to the editor window
- New "Whirld Resource" tool to enable prefab locking on noneditable items such as the Base (Canceled: Currently impossible due to Unity bugs, Unity is working on fixing them)
- Much nicer Jump Point interface, with a wider range of input values - Gub
- Custom floor shader to eliminate z fighting with terrain
- Floor and sea now autoset their altitude as terrain is raised and lowered in edit mode
- Realtime sea and floor updates in edit mode. They now follow you around!
- Enlarged sea and floor to prevent visible horizon line when fog is light
- Vehicles no longer collide with sea when it is disabled - Gub
- Many operations in Whirld now tie into Unity's undo system, eliminating headaches and smoothing your workflow
- Tons of other minor tweaks and bugfixes
- And last - but certainly not least - the beginning of the Path System!
There are several existing Unity plugins to create roads and rivers, but nothing like this. What makes Whirld's Path system so awesome, you ask?
- Path implements the Catmull-Rom spline algorithm, which means that created paths will smoothly intersect all defined control points. You have COMPLETE control over the position of each path section, and the radius of each curve
- Each control point is an independent GameObject in Unity. This means that you can use tons of shortcuts like selecting and dragging multiple control points at once, dragging a point along the terrain surface by holding the Shift and Ctrl keys, or copying and pasting groups of nodes between paths
- Building paths is effortless! Click one button to toggle path creation mode, and then each right click you make in the scene will create a new node for the active path
- Edit non destructively, in real time! Path ties into Unity's editor update loop, watching for your changes and then instantly regenerating itself up to ten times per second. You can add or remove nodes, adjust widths, fine tune automatic banking parameters, and much more - and watch as your changes are instantly reflected in the path you are adjusting. The path library can even be called from a running game...
- Path can create closed and open splines with equal ease, and even toggle between them with a single checkbox. In open splines, the first and last nodes serve as control points - and the gizmo icons and colors vividly illustrate this
- Path can generate highly customizable static path meshes, or it can be used to carve and paint paths into existing terrain objects or serve as a guide for racetrack boundaries.
- Here's a couple development screenshots: Path Tests
The current path library includes quite a bit of functionality, but far more is planned. Here's some items on my Whirld to-do list:
- Update Water system with more impressive, more customizable simple water
- Create a centralized Whirld UV system to enable world space object texturing
- Create a centralized decal system to enable atlased textures wrapped over world geometry
- Other "smart" objects: portals, race rally points, bot/turret/npc system etc
- Upgrade LOD system to use a single Update call for all objects.
- Include color correction customization data for each world - Achilles
- Realtime mesh subdivision - http://en.wikipedia.org/wiki/Catmull%E2%80%93Clark_subdivision_surface - http://rosettacode.org/wiki/Catmull%E2%80%93Clark_subdivision_surface
- Runtime path LOD system - just like the terrain engine, but for splines...
- Ability to stretch arbitrary meshes along paths, with any defined offsets. Fences, bridges, telephone poles, and so much more!
- Custom heights and X axis offsets for each path "row". This will allow the creation of walls, crowned roadways, marble chutes, etc etc
- Finish path terrain integration, to enable full terrain painting and path carving
- Fine tune path export options - possible ability to generate paths after world load instead of packaging path meshes into Whirld bundles?
- Add linear path uv mapping to facilitate striped roadways and the like
- Experiment with optimizing intensive operations (such as terrain path carving) for parallel processing on multicore hardware
» Reply to CommentRe: Whirld 5
Gub
1 day - 4,587v
Posted 2011/04/01 - 21:08 GMT
Wow! That was fast! Thanks so much Aubrey! I'll post some more things later on.
» Reply to CommentRe: Whirld 5
please tell me this isn't a april fools joke!!!!
» Reply to CommentRe: Whirld 5
This isn't an April Fool's joke.
The description of the Paths system is quite vague. What is it for? Could you explain it better when you update the page?
» Reply to CommentRe: Whirld 5
No jokes, page has been updated, have a nice evening everyone.
» Reply to CommentRe: Whirld 5
Wow! That's one snazzy to-do list! What about a system for making custom meshes into objects that have the physics of water, but under them it is perfectly normal? Turrets are going to be awesome!
I haven't gotten a chance to play with the pat system yet, but I certainly will today or tomorrow.
Gub
» Reply to CommentRe: Whirld 5
I made a new project and then imported only whirld 5 into it, and the nixes showed up as white squares, not their icons. It is awesome how it updates right there, although sometimes I do have to save the scene for it to update. The banking makes for a pretty bumpy ride. ;)
Also, I found a random glitch with the game controller and the lobby scene that when you exit the world and load it up again there are two buggies.
Also, will you make an option to use your own mesh in the path system, that would be awesome because you could make something like tubes right inside unity.
Overall it is awesome! This will let people who don't know anything about another modeling program still make great worlds!
Thanks for your hard work!
Gub
» Reply to CommentRe: Whirld 5
- Thanks for your reports, I will fix the gizmo icons and dual buggies.
- Be sure to play with the "steps" parameter - you should be able to produce perfectly smooth banked curves with a bit of tweaking.
- My "Ability to stretch arbitrary meshes along paths, with any defined offsets" item in the to-do list is exactly what you are describing for creating custom tubes and the like. I can hardly wait :)
» Reply to CommentRe: Whirld 5
Also, I don't seem to be able to use the arrow keys or the F key to navigate my view in unity. This only happens in projects with whirld5 imported into them.
» Reply to CommentRe: Whirld 5
¡False Alarm!
Sorry!
» Reply to CommentRe: Whirld 5
Thank you so much! Heads up, I might use this in a project... ;)
» Reply to CommentRe: Whirld 5
Do you mean a world? or a game? That'd be cool to have another game using whirld! : D
» Reply to CommentRe: Whirld 5
The "project" started out as an idea :D now its assets and scripts!
» Reply to CommentRe: Whirld 5
Aubrey, the latest version of Whirld is unable to load older v3 type worlds reasonably; skyboxes do not show up, the progress variable does not function, and spawn points do not work at all. The older release of Whirld (v4) is much more backwards compatible and is able to load some skyboxes (not all however), but has a ton of very bad bugs such as messing up system UV tiling massively, and generating null reference exeptions across most of my in-game scripts. Using Whirld in Carbon Combat is proving to be incredibly difficult for something that should "function right out of the box" (almost as much so as the glitchy RakNet networking). With all this said, I should mention that I do appreciate all the hard work you've put into the user oriented portion of Whirld; however, please release a stable version of Whirld soon!
Sincerely,
Achilles
» Reply to CommentRe: Whirld 5
Whirld for carbon combat...
*drools*
» Reply to CommentRe: Whirld 5
Whirld will not be included in version 1.5.3 of Carbon Combat unless Aubrey releases a much more stable version.
» Reply to CommentRe: Whirld 5
hey aubray r u gonna make a sy3f game sum tyme? *drums fingers on WASD keys*
:)
» Reply to CommentRe: Whirld 5
Great Job Aubrey!!!
» Reply to CommentRe: Whirld 5
Carbon Combat 1.6.0 released with complete Whirld support! You can now load your favorite worlds from Mars (9 official worlds including Seb's Sky King, GTR's Desert, Freestyle, LittleDoug's Floating Islands, Grae's Ice Base, and more) as well as custom worlds of your choice.
To start a server using Whirld cycle through the available worlds (in the main menu left of the "Start Server" button) until you see "More Worlds!". Click on the center button and choose a world!
There are a couple bugs that I am aware of and am fixing for the next release:
- Minimap glitches for Achilles' Island (might be glitching for other maps as well)
- Tree's might turn pink on terrain worlds due to lack of shader
» Reply to CommentRe: Whirld 5
Splendid news!
Welcome to the Whirld universe - I can't wait to start adding new systems that will take everyone's games to the next level.


» Reply to CommentRe: Whirld 5
Wow! This is a great step for whirld! :)
» Reply to CommentRe: Whirld 5
I couldn't help notice that several textures from whirld 4 are not in whirld 5. Was that intentional?
» Reply to CommentRe: Whirld 5
5 days - 21,032v
Posted 2011/04/20 - 2:17 GMT
Wow mars,unity, and whirld has grown a lot since it was first out. Man bring backs a lot of good memories of the first,1.4,1.5, and 2.0 versions of mars.
» Reply to CommentRe: Whirld 5
Woah, Aubreys been working super fast.
» Reply to CommentRe: Whirld 5
I get errors when compiling. It is involved in the Wizards folder.
» Reply to CommentRe: Whirld 5
Check your Unity version. You probably need to update to 3.3.
» Reply to CommentRe: Whirld 5
Thanks for reporting Eric, I just fixed this in Whirld 6.
In the mean time, here's what everyone needs to do:
1) Open the "WhirldLibrary" folder in your Unity project pane. The following instructions all happen inside of it.
2) Rename the folder called "Wizards" to "Editor".
3) Open the "Path" folder, and move all the scripts it contains to the "/Path/Editor" folder.
4) Open Core/WhirldResource.js and comment out the two lines that start with EditorUtility.
Your Whirld projects should then compile perfectly!
P.S. Sorry I haven't posted any updates recently. I am catching up on a bunch of personal projects, and have begun upgrading Mars Explorer for the iPad 2 as well...
In the mean time, here's what everyone needs to do:
1) Open the "WhirldLibrary" folder in your Unity project pane. The following instructions all happen inside of it.
2) Rename the folder called "Wizards" to "Editor".
3) Open the "Path" folder, and move all the scripts it contains to the "/Path/Editor" folder.
4) Open Core/WhirldResource.js and comment out the two lines that start with EditorUtility.
Your Whirld projects should then compile perfectly!
P.S. Sorry I haven't posted any updates recently. I am catching up on a bunch of personal projects, and have begun upgrading Mars Explorer for the iPad 2 as well...
» Reply to CommentRe: Whirld 5
It works flawlessly! Thank you very much!
» Reply to CommentRe: Whirld 5
I have a few projects that I'm delaying the upgrade to whirld 5 as there are several textures missing from whirld 4, and it appears the same thing has been happening in previous generations as well.
» Reply to CommentRe: Whirld 5
It isn't a texture pack, it is a toolkit. Which ones, because most of them you can find on filterforge.com.
» Reply to CommentRe: Whirld 5
Aubrey,
If I export my worlds before whirld supports actual water, will my worlds always have the flat texture for the water and not the actual pro water? I'm wondering if it will automatically upgrade the water when both syn3h and whirld support the pro water.
Thanks!
» Reply to CommentRe: Whirld 5
4 days - 12,819v
Posted 2011/08/12 - 15:14 GMT
Thank you very much, aubrey!
This will work on unity 3.4, right?
» Reply to CommentRe: Whirld 5
It's not working for me, i download it and it says the file is basicly "not there" and i only have 2 options, A. try again (which failed) or B. close it.
» Reply to CommentRe: Whirld 5
It would be helpful if you explained in greater detail. We are all computer savvy here.
» Reply to CommentRe: Whirld 5
FYI, incompatible with Unity 3.4
So no exporting demos.
So no exporting demos.
» Reply to CommentRe: Whirld 5
Then why does it work for me? (i.e. Putting it in my project, modifying it, playing it, etcetera. I haven't tried exporting or packaging)
» Reply to CommentRe: Whirld 5
I so wanna make a map, but I don't know that much codes and im shit a art :(
» Reply to CommentRe: Whirld 5
You don't need to know any codes.
» Reply to CommentRe: Whirld 5
Ix-nay on the language-ay








