Если внезапно использовать что то редкое и не следующее стандарту, то можно наткнутся что NULL не равен нулю.
NULL
является подстановкой nullptr
[?]. :) emplace
[?].std::map
. 0x0F
. Это не то, чего ты ждешь от своего кода. Современные трансляторы и вовсе не позволят тебе этого сделать, явно указав на смысловую ошибку в строке left + right
потому что тебе гарантировано и никогда не нужно складывать два адреса памяти.std::string
или std::wstring
.std::wstring
через конверсию строк.+
[?] работают так как ты ожидаешь. const char* left = 0x05;
const char* right = 0x0A;
const char* result = left + right;
result
после инициализации? const
и модификатора *
ты у читателя украл около секунды времени. Лично мне сейчас, да и практически всем инженерам в таких случаях, приходится вчитываться в странное слово между char
и c_ptr
.IntList1D &list
, где ты приклеиваешь модификатор к имени. А вот сейчас в коде char *const c_ptr
что ты можешь приклеить к имени? А ничего. И выходит что у тебя оформление кода неоднозначное, заставляет все время вчитываться. И чтение твоего кода заставляет тратить на это значительно больше времени чем чтение профессионального кода.char* const c_ptr
.cast_ray
просто скачет пикселями, а не чертит прямую. А ведь про алгоритм Брезенхама описывается в статьях что я привел.y = ax + b
, из чего довольно легко выводится параметрическая запись с зависимостью от точки начала и вектора направления. Далее луч никуда бросать не надо, надо просто определить, хоть полным перебором, какие объекты сцены пересекают этот луч, найти точку проекции, посчитать направление отражения и определить, виден ли отраженный луч в камере. И это все описано в приведенных мной статьях. В цикле OpenGL тонкости трассиновки буквально разжевываются.
cocos2d-x: https://github.com/cocos2d/cocos2d-x
urho-3d: https://github.com/urho3d/Urho3D
hazel: https://github.com/TheCherno/Hazel
spartan: https://github.com/PanosK92/SpartanEngine
panda-3d: https://github.com/panda3d/panda3d
x-ray: https://github.com/OpenXRay/xray-16
cry-engine: https://github.com/CRYTEK/CRYENGINE
Denisca Gareev , по поводу сцен стоит почитать одного разработчика из Square Enix. Там есть полезная информация.