![]() |
|
![]() |
|
Thread Tools | Rate Thread | Display Modes |
#1
|
|||
|
|||
.bsp->.obj->.osgt map Collision Problem/Resources for free maps?
Hello everyone,
I started playing around with Vizard 5 (64bit version) and wanted to include a level/map that was a bit more extensive, so I looked into importing Half Life/Counterstrike maps in the (Valve) .bsp format. If you have any suggestions on where to find scenery / levels that are natively supported by Vizard and take some time to explore, I would be very grateful, to hear from you! My workflow was as follows: Since the .bsp Format that Vizard can read is not the same as the one in Valve .bsp maps, I used Nem's Tools Crafty to convert a .bsp to a .obj File and extract the relevant Textures. (If I load that .obj file into Vizard, the y and z coordiantes of all vertices are 0) Then I used blender and import the .obj File, scale the map down a bit and use the osgexport Plugin to export the complete model, including textures to .osgt which I then load into Vizard. The model seems to load fine and most of the textures are visible. Using vizcam.WalkNavigate I can move around freely. Yet, when I enable collision I have two problems:
When collision is off, I can set a starting position with setPosition, but when collision is on, I start on the origin instead (outside of any rooms). Using a vizact.onkeydown event to toggle collision, I can see that collision with the walls seem to work once I am inside a room. Yet, when I walk over stairs, I do not seem to fall down and always hover at the same height. Here is a minimal example: Code:
import viz, vizcam, vizact viz.go() viz.clearcolor(viz.SKYBLUE) map = viz.add('maps/cs_office.osgt') tracker = vizcam.addWalkNavigate(moveScale=10.0) tracker.setPosition([15.62396, -0.36471, -13.66633]) viz.link(tracker,viz.MainView) viz.MainView.collisionbuffer(0.2) viz.MainView.gravity(9.8) viz.MainView.collision( viz.ON ) #This function is called when a collision occurs def mycollision(info): print 'Collided!' #Create a callback for a collision event viz.callback(viz.COLLISION_EVENT, mycollision) My questions now are the following: What are the conditions for gravity affecting the viewpoint in Vizard? (Can I eg. go below my starting position?) Does the collision of the viewpoint treat certain models differently than others? Did anyone have a similar problem? And again: does someone know of a good source of maps/levels are known to work with vizard? Thank you all very much. |
![]() |
Thread Tools | |
Display Modes | Rate This Thread |
|
|