Editing User:Vasco.costa

From BRL-CAD

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 6: Line 6:
 
=OCL librt TODO=
 
=OCL librt TODO=
 
* Split <code>struct hit</code> in common.cl into two structs. One for <code>shot()</code> results and another for <code>norm()</code> results. This will reduce the amount of memory used to store temporary results between stages.
 
* Split <code>struct hit</code> in common.cl into two structs. One for <code>shot()</code> results and another for <code>norm()</code> results. This will reduce the amount of memory used to store temporary results between stages.
* Execute prefix sums and reductions in <code>clt_frame()</code> on the device to eliminate round-trips.
+
* Execute prefix sums and reductions in <code>clt_frame()</code> on the device.
 
* Refactor code so single-hit and multi-hit don't require recompiling all the sources twice.
 
* Refactor code so single-hit and multi-hit don't require recompiling all the sources twice.
* Cache the compiled binaries so things aren't recompiled on every launch.
 
 
* Quadrics Primitives: HYP, SUPERELL.
 
* Quadrics Primitives: HYP, SUPERELL.
* Grids Primitives: '''DSP''', <s>EBM</s>, VOL.
+
* Grids Primitives: DSP, EBM, VOL.
* Composite Primitives: '''PIPE''', '''NMG''', METABALL, EXTRUDE, REVOLVE.
+
* Composite Primitives: EXTRUDE, REVOLVE, PIPE, METABALL.
 
* Instancing Primitive: SUBMODEL.
 
* Instancing Primitive: SUBMODEL.
 
* Make Phong shader results look 100% similar to ANSI C librt.
 
* Make Phong shader results look 100% similar to ANSI C librt.
* Support lights in the shader.
 
 
* Don't intersect primitives twice. This requires a dynamic memory allocator.
 
* Don't intersect primitives twice. This requires a dynamic memory allocator.
* Smarter kernel scheduling for reduce thread divergence. For example coallesce all the quadric intersections.
+
* Smarter kernel scheduling.
 
* Spatial partitioning (perhaps a hybrid Kd-tree) in order to have early exit on scenes with high depth complexity.
 
* Spatial partitioning (perhaps a hybrid Kd-tree) in order to have early exit on scenes with high depth complexity.
 
* UV routines for all OCL implemented primitives.
 
* UV routines for all OCL implemented primitives.
Line 22: Line 20:
 
* BOT plate mode.
 
* BOT plate mode.
 
* FASTGEN support (both CLINE primitive and bool.cl code).
 
* FASTGEN support (both CLINE primitive and bool.cl code).
 
Deprecated primitives:
 
* ARS is converted to BOT.
 
* HF is converted to DSP.
 
  
 
=OCL librt Development Status=
 
=OCL librt Development Status=
Line 36: Line 30:
 
* OCL lighting modes: Phong, Diffuse, Surface Normals.
 
* OCL lighting modes: Phong, Diffuse, Surface Normals.
 
* OCL lighting modes: Multi-hit transparent (Single Stage Render Pipeline only).
 
* OCL lighting modes: Multi-hit transparent (Single Stage Render Pipeline only).
* ARB8, EBM, EHY, ELL, EPA, ETO, PART, REC, RHC, RPC, SPH, TGC, TOR shot routines in OCL.
+
* ARB8, EHY, ELL, EPA, ETO, PART, REC, RHC, RPC, SPH, TGC, TOR shot routines in OCL.
 
* Surface normal routines for all OCL implemented primitives.
 
* Surface normal routines for all OCL implemented primitives.
 
* CPU HLBVH BOT shot construction with OCL traversal and interpolated per pixel normals.
 
* CPU HLBVH BOT shot construction with OCL traversal and interpolated per pixel normals.

Please note that all contributions to BRL-CAD may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see BRL-CAD:Copyrights for details). Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)