DiscussionsIssue archiveOCCT:Visualization

Archived issue #0024819

TKOpenGl - extend the ray-tracing core by visualization of lines, text and point sprites.

Open CASCADEOCCT:Visualizationclosed27 public notes

Search issues

Description

The extending of ray-tracing core consists in obtain the resulting image as combination of ray-tracing output image and usual rendering for non raytracable elements:

- Depth-less background (seems to be already supported)
- Depth-less 2D Underlayer
- Depth-less 2D Overlayer
- Depth-less Immediate mode (currently used only within Local Selection)
- Non-raytraceable 3D presentations, including texture-based text, hollow triangulation, lines, point sprites, textured objects.

Public activity

27 archived notes

Participants are labeled by their role within this record.

01Commenter 1
Dear dbp,

the patch with the first implementation of the described extension is ready (branch CR24819_2). Please review.
02Commenter 3
The patch should be re-based on #0024894 to simplify reviewing.
03Commenter 3
Dear Danila,

your comments are welcome as well.
04Commenter 4
Dear osa,

please consider remarks and request new review.

Also it is necessary to evaluate performance after changing GPU code. Please use different 3D scenes and ray-tracing modes (simple shading, reflections, transparency and FSAA) for testing. Please use Exel table to present performance results.
05Commenter 5
Dear dbp,

the patch was updated and rebased on CR24887 (branch CR24819_5). Please review.
06Commenter 6
Dear osa,

Some changes were pushed into branch CR24819_6.

Please fix background rendering in case of empty scene (there are no any displayed objects). Currently the background is rendered as bkack instead of specified one. Use this script for testing:

pload ALL
vinit w=1024 h=768
vvbo 0
vsetdispmode 1
vsetgradientbg 180 200 255 180 180 180 2
restore C:/occt/data/occ/Bottom.brep S

vdisplay S
vfit

# backgroud is OK
vrenderparams -raytrace -shad

# background is black
verase
07Commenter 7
Dear dbp,

the found bug was fixed and patch was updated (branch CR24819_6). Please review.
08Commenter 8
Dear osa,

the patch is OK. Please evaluate performance after changing GPU code (master vs. patch). Use different 3D scenes and ray-tracing modes (simple shading, reflections, transparency and FSAA) for testing.
09Commenter 9
Dear Kirill,
the patch is ready (branch CR24819_7). Please review.
10Commenter 3
Please test the patch.
11Commenter 3
dbp wrote:
>> Please evaluate performance after changing GPU code (master vs. patch).

On GeForce GT 610, test case - samovar, 164238 triangles, 512x512 (FPS before, after):
fsaaOff-reflOff-shadowsOff-gleamOff	9.22 8.29
fsaaOff-reflOff-shadowsOn-gleamOff	5.48 5.40
fsaaOff-reflOn-shadowsOff-gleamOff	8.08 8.01
fsaaOff-reflOn-shadowsOn-gleamOff	4.82 4.76
fsaaOn-reflOff-shadowsOff-gleamOff	3.09 3.08
fsaaOn-reflOff-shadowsOn-gleamOff	1.87 1.85
fsaaOn-reflOn-shadowsOff-gleamOff	2.62 2.61
fsaaOn-reflOn-shadowsOn-gleamOff	1.59 1.57


Test case - 3 boxes, 1024x768 (FPS before, after):
fsaaOff-reflOff-shadowsOff-gleamOff	30.34 28.54
fsaaOff-reflOff-shadowsOn-gleamOff	27.55 26.09
fsaaOff-reflOn-shadowsOff-gleamOff	28.06 25.88
fsaaOff-reflOn-shadowsOn-gleamOff	25.10 23.55
fsaaOn-reflOff-shadowsOff-gleamOff	13.86 13.34
fsaaOn-reflOff-shadowsOn-gleamOff	12.35 11.52
fsaaOn-reflOn-shadowsOff-gleamOff	12.16 11.34
fsaaOn-reflOn-shadowsOn-gleamOff	11.38 10.89


12Commenter 12
Dear Commenter 2,

Branch CR24819_7 (and products from GIT master) was compiled on Linux, MacOS and Windows platforms and tested.
[revision removed]

Number of compiler warnings:

occt component:
Linux: 19 (16 on master)
Windows: 0 (0 on master)
MacOS: 201 (200 on master)

products component :
Linux: 11 (11 on master)
Windows: 2 (2 on master)

There are new additional compilation warnings:

on Linux platform:
OpenGl_Workspace.hxx:640, GNU C Compiler 4 (gcc), Priority: Normal
‘Standard_Boolean OpenGl_Workspace::myToRedrawGL’

OpenGl_Workspace.hxx:654, GNU C Compiler 4 (gcc), Priority: Normal
‘OpenGl_Workspace::myUseGLLight’ will be initialized after

OpenGl_Workspace.cxx:140, GNU C Compiler 4 (gcc), Priority: Normal
when initialized here

on MacOS platform:
OpenGl_Workspace.cxx:161, Clang (LLVM based), Priority: Normal
field 'myUseGLLight' will be initialized after field 'myToRedrawGL'

Regressions/Differences:
Not detected

Testing cases:
v3d - raytrace - bug24819 - OK

Testing on Linux:
Total MEMORY difference: 348395936 / 348271088
Total CPU difference: 50284.7600000002 / 51079.56999999988

Testing on Windows:
Total MEMORY difference: 376644544 / 376867716
Total CPU difference: 39561.96875 / 38860.375

There are differences in images found by testdiff:
http://occt-tests/CR24819-7-master-occt/Debian60-64/diff-Debian60-64.html
http://occt-tests/CR24819-7-master-occt/Windows-32-VC9/diff-Windows-32-VC9.html
13Commenter 13
Dear Kirill,
the patch was updated (branch CR24819_7). Please review.
14Commenter 3
Please test updated patch.
15Commenter 15
Dear Commenter 2,

Branch CR24819_7 (and products from GIT master) was compiled on Linux, MacOS platforms and tested.
[revision removed]

Number of compiler warnings:

occt component :
Linux: 16 (16 on master)
MacOS: 200 (203 on master)

products component :
Linux: 11 (11 on master)

Regressions/Differences:
No regressions/differences

Testing cases:
http://occt-tests/CR24819-7-master-occt/Debian60-64/v3d/raytrace/bug24819.html
v3d raytrace(014) bug24819: OK

Testing on Linux:
Total MEMORY difference: 348614704 / 348657500
Total CPU difference: 49957.46000000015 / 51365.58000000003

There are following differences in images found by testdiff.
http://occt-tests/CR24819-7-master-occt/Debian60-64/diff-Debian60-64.html
IMAGE v3d raytrace refraction: refraction.png differs
IMAGE v3d raytrace connected: connected_rt1.png differs
IMAGE v3d materials bug24855: bug24855_rt_bronze.png differs
IMAGE v3d materials bug24855: bug24855_rt_brass.png differs
IMAGE v3d materials bug24855: bug24855_rt_plastic.png differs
IMAGE v3d materials bug24855: bug24855_rt_aluminium.png differs
IMAGE v3d materials bug24855: bug24855_rt_silver.png differs
IMAGE v3d materials bug24855: bug24855_rt_jade.png differs
IMAGE v3d materials bug24855: bug24855_rt_stone.png differs
IMAGE v3d materials bug24855: bug24855_rt_gold.png differs
IMAGE v3d materials bug24855: bug24855_rt_obsidian.png differs
IMAGE v3d materials bug24855: bug24855_rt_copper.png differs
IMAGE v3d materials bug24855: bug24855_rt_satin.png differs
IMAGE v3d materials bug24855: bug24855_rt_chrome.png differs
IMAGE v3d materials bug24855: bug24855_rt_pewter.png differs
IMAGE v3d materials bug24855: bug24855_rt_steel.png differs
IMAGE v3d materials bug24855: bug24855_rt_neon_phc.png differs
IMAGE demo samples raytrace: raytrace.png differs
16Commenter 16
Dear Commenter 2,

Branch CR24819_7 (and products from GIT master) was compiled on Windows platform and tested.
[revision removed]

Number of compiler warnings:

occt component :
Windows: 0 (0 on master)

products component :
Windows: 2 (2 on master)

Regressions/Differences:
No regressions/differences

Testing cases:
http://occt-tests/CR24819-7-master-occt/Windows-32-VC9/v3d/raytrace/bug24819.html
v3d raytrace(014) bug24819: OK

Testing on Windows:
Total MEMORY difference: 376570396 / 376858724
Total CPU difference: 38798.828125 / 38774.578125

There are following differences in images found by testdiff.
http://occt-tests/CR24819-7-master-occt/Windows-32-VC9/diff-Windows-32-VC9.html
IMAGE v3d raytrace connected: connected_rt1.png differs
IMAGE v3d materials bug24855: bug24855_rt_bronze.png differs
IMAGE v3d materials bug24855: bug24855_rt_brass.png differs
IMAGE v3d materials bug24855: bug24855_rt_plastic.png differs
IMAGE v3d materials bug24855: bug24855_rt_aluminium.png differs
IMAGE v3d materials bug24855: bug24855_rt_silver.png differs
IMAGE v3d materials bug24855: bug24855_rt_jade.png differs
IMAGE v3d materials bug24855: bug24855_rt_stone.png differs
IMAGE v3d materials bug24855: bug24855_rt_gold.png differs
IMAGE v3d materials bug24855: bug24855_rt_obsidian.png differs
IMAGE v3d materials bug24855: bug24855_rt_copper.png differs
IMAGE v3d materials bug24855: bug24855_rt_satin.png differs
IMAGE v3d materials bug24855: bug24855_rt_chrome.png differs
IMAGE v3d materials bug24855: bug24855_rt_pewter.png differs
IMAGE v3d materials bug24855: bug24855_rt_steel.png differs
IMAGE v3d materials bug24855: bug24855_rt_neon_phc.png differs
17Commenter 3
Please test updated patch in branch CR24819_8.
18Commenter 18
Dear Commenter 2,

Branch CR24819_8 from occt git-repository (and master from products git-repository) was compiled on Linux and Windows platforms and tested.
[revision removed]

Number of compiler warnings:

occt component :
Linux: 16 (16 on master)
Windows: 0 (0 on master)

products component :
Linux: 11 (11 on master)
Windows: 2 (2 on master)

Regressions/Differences:
No regressions/differences

Testing cases:
http://occt-tests/CR24819-8-master-occt/Debian60-64/v3d/raytrace/bug24819.html
http://occt-tests/CR24819-8-master-occt/Windows-32-VC9/v3d/raytrace/bug24819.html
v3d raytrace(014) bug24819: OK

Testing on Linux:
Total MEMORY difference: 349561292 / 349444332
Total CPU difference: 52633.090000000106 / 53215.180000000095

Testing on Windows:
Total MEMORY difference: 377163460 / 377795616
Total CPU difference: 41158.109375 / 42054.90625

There are no differences in images found by testdiff.
http://occt-tests/CR24819-8-master-occt/Debian60-64/diff-Debian60-64.html
http://occt-tests/CR24819-8-master-occt/Windows-32-VC9/diff-Windows-32-VC9.html
IMAGE v3d materials bug24855: bug24855_rt_bronze.png differs
IMAGE v3d materials bug24855: bug24855_rt_brass.png differs
IMAGE v3d materials bug24855: bug24855_rt_plastic.png differs
IMAGE v3d materials bug24855: bug24855_rt_aluminium.png differs
IMAGE v3d materials bug24855: bug24855_rt_silver.png differs
IMAGE v3d materials bug24855: bug24855_rt_jade.png differs
IMAGE v3d materials bug24855: bug24855_rt_gold.png differs
IMAGE v3d materials bug24855: bug24855_rt_obsidian.png differs
IMAGE v3d materials bug24855: bug24855_rt_copper.png differs
IMAGE v3d materials bug24855: bug24855_rt_satin.png differs
IMAGE v3d materials bug24855: bug24855_rt_chrome.png differs
IMAGE v3d materials bug24855: bug24855_rt_pewter.png differs
IMAGE v3d materials bug24855: bug24855_rt_steel.png differs
IMAGE v3d materials bug24855: bug24855_rt_neon_phc.png differs
IMAGE bugs modalg_4 bug697_7: bug697_7_Driver1_Viewer1_View1.png differs
IMAGE bugs modalg_4 bug697_4: bug697_4_Driver1_Viewer1_View1.png differs
19Commenter 3
Dear Commenter 2,

remaining image differences are OK, please integrate patch.
20Commenter 4
Branch [archived branch] has been deleted by Participant.

[revision removed]
21Commenter 4
Branch [archived branch] has been deleted by Participant.

[revision removed]
22Commenter 4
Branch [archived branch] has been deleted by Participant.

[revision removed]
23Commenter 4
Branch [archived branch] has been deleted by Participant.

[revision removed]
24Commenter 4
Branch [archived branch] has been deleted by Participant.

[revision removed]
25Commenter 4
Branch [archived branch] has been deleted by Participant.

[revision removed]
26Commenter 4
Branch [archived branch] has been deleted by Participant.

[revision removed]
27Commenter 4
Branch [archived branch] has been deleted by Participant.

[revision removed]

Related records