Making a Template
I'm Loris Moreau. here is my Template for Blog Posts — using Html, CSS & a bit of java, but mostly tears.
Blog Posts
Template Template Template Template Template Template Template Template Template Template Template Template
Template Template Template Template Template Template Template Template Template Template Template Template
Template Template Template Template Template Template Template Template Template Template Template Template
Template Template Template Template Template Template Template Template Template Template Template Template
State of the art
Template Template Template Template Template Template Template Template Template Template Template Template
Template Template Template Template Template Template Template Template Template Template Template Template
Template Template Template Template Template Template Template Template Template Template Template Template
Template
Template Template Template Template Template Template Template Template Template Template Template Template
Things to remember
T 1
T 2
T 3
Code.h
// Wide vector3 struct
struct LaneVector3
{
LaneF32 x;
LaneF32 y;
LaneF32 z;
LaneVector3();
LaneVector3(LaneF32 x, LaneF32 y, LaneF32 z);
LaneVector3(float arr[3][LANE_WIDTH]);
LaneVector3(Vector3 vector);
LaneF32& operator[](int index);
};
Multithreading
Multithreading splits work across CPU cores. Raytracing is "embarrassingly parallel" - each pixel can be computed independently.
Work queue example
Work Queue
struct WorkOrder
{
Image* image;
World* world;
uint32_t startRowIndex;
uint32_t endRowIndex;
uint32_t sampleSize;
uint32_t* randomState;
};
/* ... */
Multithreading gave ~2x speedup in practice for this project (with diminishing returns past 3–4 threads).
- Multithreading Optimized : 2 Hrs 9 Min
Conclusion
Making Templates is great for repeatability
Final implementation: This Page