• If you are citizen of an European Union member nation, you may not use this service unless you are at least 16 years old.

  • Get control of your email attachments. Connect all your Gmail accounts and in less than 2 minutes, Dokkio will automatically organize your file attachments. You can also connect Dokkio to Drive, Dropbox, and Slack. Sign up for free.


P3D Development

Page history last edited by Phil Lavery 10 years, 11 months ago

11 August 09

1) WideWindow config file problem


The original version of the file is for a 1280x1024 resolution. 


revised files : 


4 x 3 Format 

1024 x 768 : wideWindow1024.cfg

1280 x 960 : wideWindow1280.cfg


5 x 4 Format

1280 x 1024 :



2)  Volumes :


2a)      Colour : use of Hounsfield Units should allow colour to be applied to organs with known densities.


2b)     Can the use of Hounsfield Units also be used to allow  known densities to be removed, for instance bone and the scanner bed, air etc.           Perhaps adding a column to the .tf file to allow an alpha/transparency to be set for the various ranges of values.


2c)     More accurate control when manually adjusting alpha tf (a key) values. Again perhaps Hounsfield Units could help here. It would also be helpful to be able to set the alpha tf (a key) within the xml tag for both .dcm and .ive files.


2d)     The ATI 4870 card is currently allowing volumes of 512 x512 x 1024 slices to be loaded. However, when combined in a show with other volumes the max becomes 512 slices. If you comment out the all bar the last slide then volume "prost_full" (which has 1024 slices) will load fine. When the other volumes are included in show, the last slide  "prost_full", will display garbage unless you replace it with a version with only 512 slices.

example : test_show.zip


Note : I have changed my setup, and introduced the Matrox dual head2go, so that I am only using one output from the graphics card and creating a single wide window over both displays. This has improved performance slightly, has improved sync when moving very large data and has fixed the above problem with that particular show :-)



2e)     Colour : can colour.tf be used with .ive files.



See below for remaining 5th August volume problems :-)


3)  XML 


3a)      It appears that additional spaces in the xml tags can alter how stereo images and movies are displayed. 

                 example: stereo_display.zip


          The stereo movie displays as two movies, each with the left and right eyes.... it appears that the region tag is not being read/applied.

          The problem seems to occur if there is more than one space used in the image tag.







<image position="-0.5 -0.5 -2" fade="0 0" scale="0.001" looping="OFF">stereo/bio_PoaAlpina.mov</image>

<model coordinate_frame="slide" scale="250" position="0.5 0.5 0" fade="0 0  1 1" rotate="60 1 0 0">starfield2.osg</model>

<stereo_pair fade="0 0 2 0 3 0.999"   position="0.5 0.5 0" scale="1" rotate="0.1 1 0 0" looping="ON">

<image_left         region="0.0 0.0 0.5 1.0" >stereo/blu_sun2.mov</image_left>

<image_right      region="0.5 0.0 1.0 1.0" >stereo/blu_sun2.mov</image_right>





This same issue can also happen with images.... part of the problem putting together an example, is that it is not consistent.... when you copy a slide with this problem from a larger show, and create a new show with just with this slide, often the problem disappears... but this one was still exhibiting the problem.


3b)      With volumes using the "a" key seems to be activating the autorun feature as well as the alpha tf. Change the duration in the xml file, to be short say 10 sec and once loaded use the a key to adjust the alpha tf. The show will then autorun using the duration.

                 example ( this is the same as above) : test_show.zip


Changing "a" for autorun to "g" for go .... and changing "s" for stop to "h" for halt, would be a solution. 




3c-1)     My large school shows either don't load at all, or if they do, some images and movies don't display. These are too large to upload. I will capture shell output and crash logs. 


Failed to load :  Space Show 

This show gets as far as the holding slide before crashing...

shell output: space_show_ crash_on_load.txt

      xml file : space1a.xml


     movie file: huygens_alien_winds_descent.mov


When I remove the "huygens_alien_winds_descent.mov" which is a movie/ audio file the show loads.  But almost all content apart from audio and the starfield don't display.... unless you go forwards and then backwards through the presentation.... it appears this is the fade problem mentioned again at 3e) below. 


The show plays fine on previous versions of P3D not using the new parser...


I have been finding the same problem with other images or movies that cause the p3d to crash while loading, both on my machine and up in Aberdeen.


3c- 2)   Point Cloud crashes : present3d_crash_log1.txt  p3d_crash_pointclouds.txt  p3d_crash_aoc_pointcloud.txt

               Will see if I can recreate this problem but with smaller show. 



3c- 3) animation_material /paths issue?


example : animation.zip


There are a number of issues here :


1) This uses the original paths that you did to throw images out of the screen (Goodyear). However the paths don't all behave as they should with some sending images across the screen.


2)  Now go into the show include the second slide ( which is just a copy of the first) and play..... I get a different behavior on the original first slide....


3) Now do the same again and include the the third slide... a different behavior again... 


4) When this slide is included in a larger show nothing displays at all.





3d)     When a large show loads it displays the holding slide, but before displaying the first slide, models and images from the show are           flashed on the screen... it then loads the first slide. It might be more obvious if you add a blank slide as the first slide.

                 example ( this is the same as above) : test_show.zip




3e)    Click to run and jump : the jump happens first and reveals the slide in the base show before the new show is loaded.... which is a problem. If you apply a fade to try and mask this it doesn't seem to work properly. Previously, the fade wasn't applied and so made no difference. Now the initial state of the fade is applied but it doesn't fade up.


note : You will need to change the paths in the xml and the runmyapp file to suit your directory structure.

               example: btba_test 2.zip 


Load btba_test.xml, click on image "Faraday" it will jump you to slide "2" and open a new show with image "6", press "n" you will escape back original show, which should have image "2" but it doesn't fade up... press arrow to move to next slide "3" and then move back to "2" the image will then fade up.




3f)     Click to run and jump : using the n key 2 or 3 times after this can cause a crash

               example: btba_test 2.zip


note : You will need to change the paths in the xml and the runmyapp file. You will need to take the fade off of <!--slide "2" -->


Load btba_test.xml, click on image "Faraday" it will jump you to slide "2" and open a new show with image "6", press "n" (you might need to click on the screen to give focus) you will escape back original show , which should have image "2"... now click on "2" it will load a new show with image "6", press "n and  you will escape back original show... now press "n" .... P3D will crash.


shell : Jump_n_shell.txt    jump_n_shell2.txt

crash log : jump_n_error_log.txt


4a) Lighting : revised

It appears that if the light source has been positioned using the <key>"k"</key>, and there are clean layers used, the position is not retained for the following layers (clean_layers).


In the example below, this is an issue with the use of <clean_layers> .... I have then converted the clean layers to new slides and the lighting issue is fixed for this example. I will investigate the others where this happened and see if it this is always the cause :-)

example : light.zip

example : clean layers : use  btba_light.xml in the above download.

example : slides : use  btba_light_b.xml in the above download.


We have used clean layers extensively in the last couple of shows... so if there is an easy fix for this great.... if not  we will need to change the shows :-)



5) Point Clouds :


5a) Using +/- to change size of points doesn't always work with the same show....


I load the points show, using + or - does mot change point size for any of the data... esc and load again and it works.


xml :  points.xml  ( you will find this show in /Present3D when I drop of the hard disk)


shell when it didn't work : points_changesize_not.txt


load again and it works : points_changesize_works.txt




5 August 09

Volumes :


1.0      Volumes from standard image stacks .jpg.    (can crash mac) and don't display correctly - top and bottom image of stack appear, but with large empty space between.



colon dataset : colon2.zip

colon shell output : colon2 shell output.txt




2.0 A number of dicom files fail to load.


pet dataset : PET-CT-1.zip

pet shell output : pet_error.txt



3.0  Volumes with manipulator. I was able to find one of the handles that worked on one dataset... but only intermittently. When it did work, the box didn't change size, as I expected, instead the whole box moved.


tests :

osgkeyboard : shift highlights ok.


osgpick : (in stereo) clicking on the objects in either of the eyes does not work. However, if I click off to one side in the left eye... it works. Seems to be an alignment issue.... 




OSG : LibVNC plugin not building

shell ouput : vnc_plugin_error.txt




27 July 09

Stereo Images and Movies not working ;  Now seem to be working!


small file : setup_sm.zip

large file : setup.zip




17 May 09


Current problems and thoughts are :



Volumes :

1.0      Unable to create volumes from standard image stacks .jpg or .tif etc (crashes mac)



5.0     Controls :  Interacting with Alpa (a) and Transparency (t). 


     5.1     with alpha you move the mouse up the screen to remove data, with tran you move down, this feels counterintuitive and perhaps should be the same for both, with full on at the top of the screen and full off at the bottom. This would require less thought when presenting.


     5.2      the useful portion of the current movement can be very small, a way to control the sensitivity and give a more useful range and therefore more sensitivity would be helpful.  Perhaps either setting a starting position with <key> or the mouse and then being able to use the + and - keys to make small stepped changes to alpha/trans/contrast.... and using same keys with a modifier key to make coarser adjustments. 


6.0     Image control: Contrast / Sensitivity / Detail


7.0    Loading and using Visible Human data


8.0     Implementing CLUT


9.0     Implementing Clipping Planes



other problems: 


4.0 <Click_to_run jump >


  • Pressing n (next) can cause crash. (will upload sample show)
  • Unable to move by 1 slide. (will upload sample show)


5.0  Keys

  • New keys required to replace the previous behaviours of the "a" and "s" keys.

a =    auto_run                     suggest replacement keys :  g = go

s =     stop_ auto_run          suggest replacement keys :  h = halt 


List of current keys :P3D Keys 

Use of a key_config_file would be very useful, as it would enable old v1.2 OSG based shows to be run without having to change the xml files ... and all of our shows are currently based on v1.2 :-)



6.0 VNC colour change :  


  •      dramatic colour change of images displayed in P3D VNC window. Colour space problem? 
  •       ability to include login and password would allow wider range of VNC programs.



end 17 may 09 




Fovia volume rendering worth looking at  :-)




Osirix sample datasets :





VNC problem


Now working with ScreenRecycler, but following issues in P3D :


  • Loss of VNC connection will cause your P3D show to exit.
  • Colour within the VNC window is altered.

          example left is original/correct / right as displayed in P3D VNC

  • Moving objects in the scene can become sticky/slow.


Function Missing :


  • ability to include login and password would allow wider range of VNC programs.





Now appears to be installed correctly, but not displaying movie - a resolution issue?



WideWindow config file problem


The original version of the file is for a 1280x1024 resolution. I have changed the screen dimensions but the view figures need recalculated :-)


my amended  file : wideWindow.cfg 


Note from Robert Osfield: what problem are you seeing with this file? Is the on screen aspect ratio note quite right?  I'm not clear on what I should be changing to what and for what reason...

Active Feature Requests :




1) Bump mapping :

OSG supports bump mapping but files containing bump maps eg obj, .dae won't display bump texture in osgviewer or p3d. 


2) HUD <fixed_layer>/s :

Support for layers that do not move with the camera. To allow logo, text, movie to be run over interactive data or to create a fixed background.



3) <audio_volume>

volume control for audio and movies same as <fade> tag


A movie start/stop tag would solve a lot of problems.
A movie <start_fade_on 0 0 2 1 volume_fade_on 0 0 2 1> would be really helpful. 

5) Capture Animation Path:

capture an animation path (as per z/Z) but with any manipulator - particularly trackball.




to be able to apply a defined transition from slide to slide or layer to layer.

7) <effect>

to be able to apply an opengl effect 

8) Capture to movie:

to be able to drive a P3D show and capture as a stereo movie. Currently do this using Snaps Pro X.


9) Midi plugin :

I noticed that someone on the osg mailing list is creating a midi based music application :



could they be approached to see if they would open source the midi plugin?


10) Collaborative  multi-site P3D.




Bugs & Feature Requests : Archive

Existing Bugs in Osg 2.x / P3D  :


models and files : p3d_bugs.zip 




New Features Requests :


Most important of the following are a,b,c,d,e & f  as these are required for current shows :-)


6 ) Support for png & psd textures (on windows) 


Note from Robert Osfield, I moved this item from Bugs to feature request as it isn't a bug, rather than png support was not built from P3D/OSG version that Moyra has, so it should be just a case of building the plugin next time around, with psd texture format, this is not supported by the OSG directly, it's only virtue of quicktime on the Mac that it's supported, adding support to other platforms would require writing of a new loader for this format, which is very much a feature requiest.  It is recommend that one uses standard image formats rather nieche proprietary ones.


Support for png and psd (photoshop) textures. P3D will support these formats as images but not as textures whether or not models are exported with these textures or substituted later. 


Seems to work on the Mac...


see last slide on xml file :   p3d_movie2a.xml
replacement .psd texture to go in models folder :  test.psd



e) <volume>

volume control for audio and movies same as <fade> tag


A movie start/stop tag would solve a lot of problems.
A movie <start_fade_on 0 0 2 1 volume_fade_on 0 0 2 1> would be really helpful. 


5) Clean Layers
Movies/soundtrack on clean layers are difficult to use without a movie start/stop tag.
A movie started on a <layer> and not re-introduced in every (or at least the last) <clean_layer> will continue to play through out the show, even when changing slides.
Movies/soundtracks on all layers start on loading the slide and not the layer. This is sometimes desirable and at others it is a huge problem. 
A movie start/stop tag would solve this problem.
A movie <start_fade_on 0 0 2 1 volume_fade_on 0 0 2 1> would be really helpful. This in conjunction with the audio/movie span layers/section below would make a huge difference.
see xml file :  p3d_bugs_clean.xml


to be able apply a defined transition from slide to slide or layer to layer.

i) <effect>

to be able to apply an opengl effect

j) Capture Animation Path:

capture an animation path (as per z/Z) but with any manipulator.

k) Capture to movie:

to be able to drive a P3D show and capture as a stereo movie.


L) Bump mapping :

OSG supports bump mapping but files containing bump maps eg obj, dae wont display bumb texture in osgviewer or p3d


M) HUD Layer/s





Bugs Fixed:


1)  Animation paths on layers :  

Previously an animation started on entering the layer, now it starts on entering the slide.

Previous behaviour essential or an option.


see xml file :  p3d_bugs.xml

          simplified file :  p3d_bugs2.xml 


2)  Blender animation import :

 Blender or other imported model animations that will play in OsgViewer don't play in P3D.


blender animation file : dominos.osg



3)  OsgConv

Moyra reported that there appears to be change in OsgConv that now prevents movies applied as textures to a converted .flt or .obj file from playing. Models converted with OsgConv 1.2v play fine in OSG 2.0/P3D. (on Windows)
However, I have tried to replicate this on the Mac and have found that .obj files work with both old and new osg versions.
The problem is with .flt files. These will not play the movie file, even though they do find it. But it is the same for both old and new osg.
see xml file :   p3d_movie2a.xml
You will notice, that when the movie has not been started playing by a previous .obj converted model, the .flt version appears completely transparent. So the movie texture is being found, but it is not being played. 
see xml file :   p3d_movie.xml

4) Keys

 1) using k key to move light source doesn't  work with Polygons.

 2) At the moment the 'L' key has to be pressed manually - It would be very useful if this command could be integrated into P3D (like the 'W' key) 


5) Alpha blending of transparent videos + images


The problem was that if you loaded an image or video that had alpha values assigned to it to rendering them properly they would have to have a animation material or a fade assigned to them in the P3D xml file to be able to get Present3D to teat them as being transparent and requiring blending and depth sorting.


The fix was to autodect the presents an an active alpha channel and to automatically enable the blending and depth sorting of these images.



New Features Added :


Please add information on how to apply and use new features :


1) Live Movie :

Within a layer, treat like an movie:




2) VNC :

Within a layer, treat like an image:




3) Browser :

Within a layer, treat like an image:




4) PDF :

Within a layer, treat like an image:


<pdf page="0">document.pdf</pdf>


Also can import a whole pdf document, one page per slide:




You can then use the new modify_slide and modify_layer tags to modify these built pages: i.e.


<modify_slide slide="2">

<modify_layer layer="0">






5) Environmental var suage and setting, and paths :














6) Click to run and jump :


additional option of moving forward x slides in parent show.  Usage - add following options to the click_to_run : jump="realtive" or "absolute" and then slide="num" and layer="num", example:

<click_to_run jump="relative" slide="0" layer="-1">osgviewer glider.osg</click_to_run>

<image coordinate_frame="slide" position="0.25 0.75 0.0" scale="0.25">Images/lz.rgb</image>

<click_to_run jump="absolute" slide="0" layer="0">osgviewer cow.osg</click_to_run>

<image coordinate_frame="slide" position="0.75 0.75 0.0" scale="0.25">RSVclip.mov</image>



7) Presetation exit tag :


escape as a slide  and button/layer tag : eg 1) on entering final slide in show it escapes back to original show  2) as per click to run, click on image or text to escape back to original show.  Usage add exit to a layer, on advancing to a layer containing exit P3D will exit immediately.


c)  <loop> to loop show :  

This was the original behaviour of P3D, but would be best as an option again both as a slide and a layer tag. Usage, add the follow to top
of the file, but below the presetnation tag:


d) Jump 

like click to run but within the same show, so applied to image/model/text and clicking on will jump x number of slides forward or backward. Or jump to a named slide, this would have the advantage that adding, removing or moving slides would not interfere with these links. Usage:

<jump jump="relative" slide="-2" layer="0"></jump>


f) audiospan - media spanning multiple slides
audio spanning section ; to allow audio tracks to span multiple slides.  This is now supported by just adding movie (with audio) to each slide/layer that needs the audio/movie, and P3D will now spot that there is continuity between slides/layers and will leave the media
playing without restarting it.  This functionaity works without any new tags, it also does away with the need for clean_layers.


Comments (0)

You don't have permission to comment on this page.