Size: a a a

pro.graphon (and gamedev)

2021 April 24

U

UsernameAK in pro.graphon (and gamedev)
у меня оказалось что оно уходило вообще в дедлок :D
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
Например, всегда есть выбор, сделать, скажем, POD-структуру, и в ней извне в каком-нибудь методе Shutdown всей подсистемы релизить ссылки на какие-нибудь объекты D3D
источник

U

UsernameAK in pro.graphon (and gamedev)
> POD
в джаве это зовётся POJO
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
Или же сделать некопируемый класс, и в нём ComPtr, и принимать, скажем, && ссылку на оборачиваемый объект, либо вообще создавать его в конструкторе с исключением
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
Писать по времени одинаково, но потерять что-то в будущем в первом случае гораздо проще
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
Да без разницы, суть в том, кто за что отвечает
источник

U

UsernameAK in pro.graphon (and gamedev)
я так когда-то держал VBO
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
Чтобы не было инверсии ответственности, скажем так
источник

U

UsernameAK in pro.graphon (and gamedev)
сейчас у меня всё обёрнуто, хотя там есть dispose() которые приходится каскадить, ибо нет RAII
источник

U

UsernameAK in pro.graphon (and gamedev)
я думал переписать на плюсы, но потом такой "да ну нахуй"
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
На плюсах гораздо проще за владением следить, поскольку там можно всё писать в основном через значения, а не через new повсюду и ссылки
источник

U

UsernameAK in pro.graphon (and gamedev)
я знаю
источник

U

UsernameAK in pro.graphon (and gamedev)
в джаве ещё и огромный оверхед по памяти
источник

U

UsernameAK in pro.graphon (and gamedev)
там чёто порядка 12 байт на объект
источник

U

UsernameAK in pro.graphon (and gamedev)
(8 байт на метаданные для GC, и 4 байта на указатель на RTTI)
источник

U

UsernameAK in pro.graphon (and gamedev)
зато в джаве 4-байтные указатели даже на 64-битных системах) (до 32 гб выделенной памяти, 3 младших бита считаются нулём, ибо все равно выравнивание)
источник

D

Deathwish in pro.graphon (and gamedev)
Ну джава она реально жесть какая-то. Щас вон в универе на джаве заставляют писать, а я этот язык не очень одобряю.
источник

U

UsernameAK in pro.graphon (and gamedev)
джава хороша пока у тебя меньше 5000 строк кода в проекте
источник

D

Deathwish in pro.graphon (and gamedev)
Это очень хорошо подстёгивает писать грамотный код, который не раздувается
источник

U

UsernameAK in pro.graphon (and gamedev)
джава плохо масштабируется ввысь
источник