0031999: Tests - request Core Profile on macOS for Ray-Tracing tests
[occt.git] / tests / v3d / glsl / shading_models
1 puts "========"
2 puts "Test various Shading Models assigned per-object"
3 puts "========"
4
5 # PBR doesn't work with Compatible Profile on macOS
6 #if { $::tcl_platform(os) == "Darwin" } { vcaps -core }
7
8 # setup viewer
9 vclear
10 vclose ALL
11 vinit View1 -width 912 -height 912
12
13 # define spheres with a rough triangulation to easily distinguish Shading Models
14 psphere p0 10
15 copytranslate p11 p0  0  0 0
16 copytranslate p12 p0 40  0 0
17 copytranslate p21 p0  0 20 0
18 copytranslate p22 p0 40 20 0
19 copytranslate p31 p0  0 40 0
20 copytranslate p32 p0 40 40 0
21 compound p11 p12 p21 p22 p31 p32 ss
22 incmesh ss 1
23 vdefaults -autoTriang 0
24
25 # display objects
26 vdisplay -dispMode 1 p11 p12 p21 p22 p31 p32
27 vdrawparray p41 triangles v  0 55 0 v  0 75 0 v 20 55 0 v  0 55 0 v  0 75 0 v  0 55 20 v  0 55 0 v  0 55 20 v 20 55 0 v  0 75 0 v  0 55 20 v 20 55 0
28 vdrawparray p42 triangles v 40 55 0 v 40 75 0 v 60 55 0 v 40 55 0 v 40 75 0 v 40 55 20 v 40 55 0 v 40 55 20 v 60 55 0 v 40 75 0 v 40 55 20 v 60 55 0
29 vtop
30 vrotate -0.9 0.1 0
31 vfit
32
33 vcaps -ffp 1
34 vdump $::imagedir/${::casename}_defaults_ffp.png
35
36 vcaps -ffp 0
37 vdump $::imagedir/${::casename}_defaults.png
38
39 # customize shading models
40 vaspects  p11 -setShadingModel VERTEX
41 vdrawtext t11   Graphic3d_TOSM_VERTEX   -pos 10  5 10 -color RED -aspect BOLD
42 vaspects  p12 -setShadingModel FRAGMENT
43 vdrawtext t12   Graphic3d_TOSM_FRAGMENT -pos 50  5 10 -color RED -aspect BOLD
44
45 vaspects  p21 -setShadingModel PBR
46 vdrawtext t21   Graphic3d_TOSM_PBR       -pos 10 25 10 -color RED -aspect BOLD
47 vaspects  p22 -setShadingModel PBR_FACET
48 vdrawtext t22   Graphic3d_TOSM_PBR_FACET -pos 50 25 10 -color RED -aspect BOLD
49
50 vaspects  p31 -setShadingModel UNLIT
51 vdrawtext t31   Graphic3d_TOSM_UNLIT    -pos 10 45 10 -color RED -aspect BOLD
52 vaspects  p32 -setShadingModel FACET
53 vdrawtext t32   Graphic3d_TOSM_FACET    -pos 50 45 10 -color RED -aspect BOLD
54 vaspects  p41 -setShadingModel VERTEX
55 vdrawtext t41   Graphic3d_TOSM_VERTEX   -pos 10 65 10 -color RED -aspect BOLD
56 vaspects  p42 -setShadingModel FACET
57 vdrawtext t42   Graphic3d_TOSM_FACET    -pos 50 65 10 -color RED -aspect BOLD
58 vdisplay -topmost t11 t12 t21 t22 t31 t32 t41 t42
59
60 vcaps -ffp 1
61 vdump $::imagedir/${::casename}_ffp.png
62
63 vcaps -ffp 0
64 vlight -change 1 -intensity 0.1
65 vrenderparams -shadingModel pbr
66 vdump $::imagedir/${::casename}.png