Orthodox C++ (sometimes referred as C+) is minimal subset of C++ that improves C, but avoids all unnecessary things from so called Modern C++. It's exactly opposite of what Modern C++ suppose to be.
/* | |
This software is released under the MIT license: | |
Permission is hereby granted, free of charge, to any person obtaining a copy of | |
this software and associated documentation files (the "Software"), to deal in | |
the Software without restriction, including without limitation the rights to | |
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of | |
the Software, and to permit persons to whom the Software is furnished to do so, | |
subject to the following conditions: | |
The above copyright notice and this permission notice shall be included in all | |
copies or substantial portions of the Software. |
// This is a GLSL implementation of | |
// "Computing the Singular Value Decomposition of 3 x 3 matrices with | |
// minimal branching and elementary floating point operations" | |
// by Aleka McAdams et.al. | |
// http://pages.cs.wisc.edu/~sifakis/papers/SVD_TR1690.pdf | |
// This should also work on the CPU using glm | |
// Then you probably should use glm::quat instead of vec4 | |
// and mat3_cast to convert to mat3. |
Docker install instructions: https://github.com/ravi9/misc-readmes/blob/master/install-docker-centos.md
docker pull centos/devtoolset-6-toolchain-centos7
#Login into the docker with with USER 0 with sudo permissions.
docker run -it --user 0 centos/devtoolset-6-toolchain-centos7:latest /bin/bash
// From: https://code.google.com/archive/p/kri/wikis/Quaternions.wiki | |
struct Spatial { | |
vec4 pos,rot; | |
}; | |
//rotate vector | |
vec3 qrot(vec4 q, vec3 v) { | |
return v + 2.0*cross(q.xyz, cross(q.xyz,v) + q.w*v); | |
} |
CMake๋ฅผ ์ ์ฐ๋๊ฑฐ์ฃ ?
์ข์ ํด์ Visual Studio ๋ฟ์ ๋๋ค. ๊ทธ ์ด์ธ์๋ ์ ๋ถ ์ฌ๋(้ช้)์ ๋๋ค ์ฌ๋! - ์์ฑ์
- ์ด ๋ฌธ์๋ CMake๋ฅผ ์ฃผ๊ด์ ์ผ๋ก ์์ ํฉ๋๋ค
- ์ด ๋ฌธ์๋ฅผ ํตํด CMake๋ฅผ ์์ํ๊ธฐ์ ์ ํฉํ์ง ์์ต๋๋ค
https://cgold.readthedocs.io/en/latest/ 3.1 ์ฑํฐ๊น์ง ๋ฐ๋ผํด๋ณธ ์ดํ ๊ธฐ๋ณธ์ฌํญ๋ค์ ์์ฑ์ผ๋ก ์ตํ๋ ๊ฒ์ ๋๊ธฐ์ํ ๋ณด์กฐ์๋ฃ๋ก์จ ์์ฑ๋์์ต๋๋ค
We test the runtimes of simple compute shaders reading from one 3D texture using some kind of filter, and writing back to another texture. The local work group size of the compute shader is varied for some arbitrary set of work group sizes, and the effect of different internal texture formats are studied.
All tests are performed using 512x512x512
3D textures. At this size memory throughput and latency will be the primary bottleneck, so any extra calculations should have negligible impact on the timings.
All timings are measured by averaging the frame time across 128 frames, with a 128 frame warmup, with vsync disabled. Using queries might provide more stable numbers.
The work group sizes are:
Disclaimer: I have no professional education in Compulational Fluid Dynamics, these are various notes on what I found/learned when trying to learn a bit on the topic. Some of the notes lack sources as I wrote them up later often just remembering some StackExchange answer. Some things I might have misinterpreted.
export default 'Hello!' |
How to Force RGB Color Output instead of YPbPr on your M1 Apple Silicon Mac for an External Monitor.
This step-by-step video tutorial will guide you through the procedure of forcing RGB color output on your M1 Mac.
Here is the direct link to the video tutorial: https://www.youtube.com/watch?v=Z1EqH3fd0V4
The video also has Closed Captions (Subtitles) that you can enable, to make it easier to follow if needed.