1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- # Script demonstrating ray tracing in 3d view
- #Category: Visualization
- #Title: Ray tracing
- # Ray-Tracing doesn't work with Compatible Profile on macOS
- pload VISUALIZATION
- if { $::tcl_platform(os) == "Darwin" } { vcaps -core }
- # make bottle by calling another script
- source [file join [file dirname [info script]] bottle.tcl]
- # make table and a glass
- box table -50 -50 -10 100 100 10
- pcone glass_out 7 9 25
- pcone glass_in 7 9 25
- ttranslate glass_in 0 0 0.2
- bcut glass glass_out glass_in
- ttranslate glass -30 -30 0
- # show table and glass
- vinit w=1024 h=1024
- vsetmaterial bottle aluminium
- vdisplay table
- vsetmaterial table bronze
- vsetmaterial table plastic
- vsetcolor table coral2
- vdisplay glass
- vsetmaterial glass plastic
- vsetcolor glass brown
- vsettransparency glass 0.6
- # add light source for shadows
- vlight spot -type SPOT -pos -100 -100 300
- # set white background and fit view
- vbackground -color WHITE
- vfit
- # set ray tracing
- puts "Trying raytrace mode..."
- if { ! [catch {vrenderparams -raytrace -shadows -reflections -fsaa -rayDepth 5}] } {
- vtextureenv on 1
- }
|