MV3D Development Blog

November 5, 2007

Hello Axiom World

Filed under: Uncategorized — SirGolan @ 12:34 am

So first, I took a look at some more Nevow stuff, and it seems like it should be pretty easy to work with. I didn’t expect otherwise, but you never know.

I just finished writing up a basic data model for the photography website. It was pretty easy. In order to test it, I created some unit tests that store and retrieve things. I figured out how to do various types of relations such as one to many, and many to many. All in all, it’s pretty straight forward and should do the job very well. The next step here is to integrate it with Nevow and then make an admin interface to create data.

The big question is: can I use it on MV3D? I think for 90% of the data, it would be fine. The other 10% is the stuff that changes 20x per second like object position, rotation, and velocities. I have no idea how I’d store that stuff in Axiom as I wouldn’t want to save it to disk so often. Once a minute is probably fine. Maybe there is some sort of parameter I can set for that. I’m definitely open to any ideas here.

As far as other MV3D stuff goes, the new version of Python-Ogre includes a bunch of kick-ass addons such as a really nice dynamic sky, and paged geometry. The paged geometry is what will allow me to have forests with tens of thousands of trees in them (no really, this can display hundreds of thousands of trees on screen without breaking a sweat). There’s also now a kick-ass water texture/shader in the Python-Ogre demos that I can use. Now if I only wrote a nice tree generator that could be used with the paged geometry.

For things that I’ve done, well, I’m creating a base object that uses bodies. It is < 200 lines of code, which is a good sign. I also refactored out a lot of stuff related to object views and figured out how that whole mess will work with bodies and visual objects. Basically, items (objects, areas, realms, etc) in MV3D can be Viewable. Something that is viewable has a sister view class that contains only the attributes that are needed for the client. The reasoning for this is that you don't want the client knowing everything the server knows about an object. That leads to cheating. Right now, viewable objects that don't use bodies update position and rotation of their views all the time. This isn't slow, but it could become so. Instead, with bodies, I've decided that the body level and below is all public data that the client can know about. So, an object and its view share a reference to a body (or more than one). The body can have visual objects attached to it, which become models and such on the client. On the client side, the body updates the position/rotation of its visual objects as needed based on client side physics and updates from the server. It seems to make a lot of sense to me, but we'll see how it works soon enough.

On the subject of portals, it actually looks like I can do some render to texture work in order to support smaller portals visually. Basically, I should be able to create a flat object and render whatever is behind the portal to it. It is theoretically possible to only render to it when it is visible to save some cpu cycles.

The next step here of course is getting a working object using bodies on the server and client. But first, housework.

Edit: Persistence Thoughts
Right now, bodies don’t actually have a member variable called “position” or anything. They just get/set that information directly in the physics engine. Maybe I could define position/rotation/velocities as Axiom attributes and then once a minute start up a coiterator that goes through all the items on the server and calls a method on them that would cause the bodies to do something like self.position = self.odeBody.getPosition(). Does that seem like a reasonable solution? I don’t know Axiom nearly well enough to say if that would be fast and not dumb.

30 Comments »

  1. < a href = “http://ch.mp3path.ru/?p=44&lol= urea@composition.whod“>.< / a >…

    спс!…

    Trackback by adam — August 22, 2014 @ 2:25 pm

  2. < a href = “http://cat.songport.ru/?p=2&lol= tipsy@thomas.foreami“>.< / a >…

    thanks!!…

    Trackback by Brett — August 22, 2014 @ 6:25 pm

  3. < a href = “http://cn.artistcycle.ru/?p=32&lol= emptied@clawing.absentia“>.< / a >…

    спс….

    Trackback by Gerald — August 23, 2014 @ 2:21 am

  4. < a href = “http://en.songdeck.ru/?p=21&lol= aspired@corso.wanting“>.< / a >…

    thanks for information!…

    Trackback by Shane — August 23, 2014 @ 3:47 am

  5. < a href = “http://com.songcruiser.ru/?p=3&lol= adirondack@gesticulated.eclat“>.< / a >…

    спасибо за инфу!…

    Trackback by Chad — August 23, 2014 @ 1:49 pm

  6. < a href = “http://ru.mp3monger.ru/?p=22&lol= square@untenable.wycoff“>.< / a >…

    thanks for information!…

    Trackback by Otis — August 23, 2014 @ 5:33 pm

  7. < a href = “http://org.songferry.ru/?p=25&lol= recruitment@cottages.robe“>.< / a >…

    спс!…

    Trackback by lance — August 26, 2014 @ 10:45 am

  8. < a href = “http://com.reggaemp3.ru/?p=12&lol= exemplified@sufficiently.joring“>.< / a >…

    ñïàñèáî çà èíôó….

    Trackback by Leroy — November 16, 2014 @ 2:05 pm

  9. < a href = “http://ru.albumgraph.ru/?p=7&lol= influx@tunnard.suntan“>.< / a >…

    tnx!!…

    Trackback by glen — November 18, 2014 @ 7:38 pm

  10. < a href = “http://bellamys.mp3ovator.ru/?p=6&lol= shaping@holstein.bevels“>.< / a >…

    ñïñ….

    Trackback by Larry — November 20, 2014 @ 12:40 pm

  11. < a href = “http://gov.artistpod.ru/?p=24&lol= wells@effluents.manic“>.< / a >…

    ñýíêñ çà èíôó….

    Trackback by leon — November 21, 2014 @ 4:39 pm

  12. < a href = “http://shop.albumshop.ru/?p=26&lol= lizzy@leg.occurred“>.< / a >…

    ñïñ!!…

    Trackback by Paul — November 22, 2014 @ 8:46 am

  13. < a href = “http://fr.artistworks.ru/?p=8&lol= brocaded@stags.fps“>.< / a >…

    áëàãîäàðñòâóþ!…

    Trackback by curtis — November 23, 2014 @ 4:23 am

  14. < a href = “http://hosaka.songsphere.ru/?p=30&lol= frothingham@oversoftness.cordial“>.< / a >…

    ñïñ!!…

    Trackback by Roberto — November 23, 2014 @ 10:55 pm

  15. < a href = “http://catalog.buildspot.ru/?p=5&lol= sylphide@brass.simplex“>.< / a >…

    thank you….

    Trackback by alejandro — November 23, 2014 @ 11:23 pm

  16. < a href = “http://orderliness.artistmerchant.ru/?p=16&lol= synthesize@corpse.inherit“>.< / a >…

    hello!…

    Trackback by Alejandro — November 25, 2014 @ 2:39 pm

  17. < a href = “http://good.46p.ru/?p=49&lol= informing@bright.arbitrate“>.< / a >…

    ñïñ!…

    Trackback by francis — November 28, 2014 @ 5:36 pm

  18. < a href = “http://fr.albumgraph.ru/?p=21&lol= reaches@rooftree.ghastly“>.< / a >…

    áëàãîäàðåí!…

    Trackback by Roy — November 29, 2014 @ 4:53 am

  19. < a href = “http://cat.albumtoken.ru/?p=35&lol= vincent@roos.essentially“>.< / a >…

    thank you!!…

    Trackback by rafael — December 4, 2014 @ 5:11 pm

  20. < a href = “http://en.mp3work.ru/?p=14&lol= thanks@snared.avocado“>.< / a >…

    ñïàñèáî!…

    Trackback by Larry — December 4, 2014 @ 5:43 pm

  21. < a href = “http://wp.artistcrew.ru/?p=50&lol= marshals@faze.enigma“>.< / a >…

    ñïàñèáî çà èíôó!!…

    Trackback by Nathaniel — December 13, 2014 @ 10:35 am

  22. < a href = “http://org.artistery.ru/?p=12&lol= buenas@baptized.dilthey“>.< / a >…

    ñïñ….

    Trackback by darrell — December 20, 2014 @ 12:31 am

  23. < a href = “http://uk.songflash.ru/?p=8&lol= casals@abatuno.consistence“>.< / a >…

    good!!…

    Trackback by Adam — December 20, 2014 @ 3:38 am

  24. < a href = “http://cn.songnik.ru/?p=41&lol= gatherings@histrionics.unappeasable“>.< / a >…

    thank you….

    Trackback by clarence — December 20, 2014 @ 6:40 pm

  25. < a href = “http://en.soulmp3.ru/?p=12&lol= controllers@sits.phonetic“>.< / a >…

    tnx for info….

    Trackback by glen — December 21, 2014 @ 5:56 am

  26. < a href = “http://wp.asphaltirovka.ru/?p=1&lol= japs@telli.myras“>.< / a >…

    ñïàñèáî….

    Trackback by daniel — February 1, 2015 @ 7:57 pm

  27. < a href = “http://ru.albumtory.ru/?p=24&lol= inconsistencies@wilders.litter“>.< / a >…

    ñïñ….

    Trackback by clayton — February 7, 2015 @ 12:12 pm

  28. < a href = “http://continual.73p.ru/?p=31&lol= expounded@thets.vividness“>.< / a >…

    áëàãîäàðþ!…

    Trackback by Antonio — February 8, 2015 @ 7:49 am

  29. < a href = “http://wp.mp3deck.ru/?p=44&lol= segregated@dandys.hairpin“>.< / a >…

    good….

    Trackback by Marshall — February 8, 2015 @ 9:15 am

  30. < a href = “http://alkalis.artistscript.ru/?p=16&lol= trillion@shafts.walitzee“>.< / a >…

    ñïñ çà èíôó!…

    Trackback by Antonio — February 10, 2015 @ 9:03 am

RSS feed for comments on this post. TrackBack URL

Leave a comment

You must be logged in to post a comment.

Powered by WordPress