Ага, §14 Движение в центральном поле
Там потенциальный барьер ~1/r² от момента вращения; в трехмерии сквозь него не пробиться, если не падать точно на центр. А более высоких измерениях можно
Мне интересно ваше мнение.
Я сделал себе механизм для того, чтобы стены перед игроком визуально "исчезали". На данный момент я делаю так, что все стены на экране визуально "под" игроком отображаются как укороченные.
Вопрос: пойдёт ли как есть, или нужно сделать этот эффект только в небольшой области под игроком? Просто заменить нижние стены чёрной пустотой я не могу, так как у меня будут поворачивающие порталы.
Видео asteroids_over_9000.mp4 · 6.7 МБ · нажмите — покажем
Over9000! (10K) астероийдов. Ещё не риалтайм, но зато это всё ещё linked lists, linear с transpose для апдейта матриц на каждый чих и наивный рендер каждого обьекта без инстансинга/бэтчинга и прочих приседаний.
сделал cabal update, теперь фейлится завизимость: keid-core-0.1.11.0:
[41 of 70] Compiling Resource.CommandBuffer ( src/Resource/CommandBuffer.hs, dist/build/Resource/CommandBuffer.o, dist/build/Resource/CommandBuffer.dyn_o )
src/Resource/CommandBuffer.hs:30:23: error: [GHC-95909]
• Constructor ‘Vk.CommandPoolCreateInfo’ does not have the required strict field(s):
next :: Vulkan.CStruct.Extends.Chain es0
• In the expression:
Vk.CommandPoolCreateInfo {flags = zero, queueFamilyIndex = ix}
In an equation for ‘commandPoolCI’:
commandPoolCI
= Vk.CommandPoolCreateInfo {flags = zero, queueFamilyIndex = ix}
In the expression:
do let commandPoolCI = ...
Vk.withCommandPool
(getDevice context) commandPoolCI Nothing Resource.allocate
|
30 | commandPoolCI = Vk.CommandPoolCreateInfo
| ^^^^^^^^^^^^^^^^^^^^^^^^...
src/Resource/CommandBuffer.hs:34:5: error: [GHC-05617]
• Could not deduce ‘Vulkan.CStruct.Extends.Extendss
Vk.CommandPoolCreateInfo a0’
arising from a use of ‘Vk.withCommandPool’
from the context: (HasVulkan context, MonadResource m)
bound by the type signature for:
allocatePools :: forall context (m :: * -> *).
(HasVulkan context, MonadResource m) =>
context -> m (Resource.ReleaseKey, Queues Vk.CommandPool)
at src/Resource/CommandBuffer.hs:(22,1)-(25,51)
• In a stmt of a 'do' block:
Vk.withCommandPool
(getDevice context) commandPoolCI Nothing Resource.allocate
In the expression:
do let commandPoolCI = ...
Vk.withCommandPool
(getDevice context) commandPoolCI Nothing Resource.allocate
In the second argument of ‘for’, namely
‘\ (QueueFamilyIndex ix, _queue)
-> do let ...
Vk.withCommandPool
$ ghc -V
The Glorious Glasgow Haskell Compilation System, version 9.8.4
$ cabal -V
cabal-install version 3.10.3.0
compiled using version 3.10.3.0 of the Cabal library
есичо