Changeset 3e8cc8b in opengl-game for vulkan-game.hpp


Ignore:
Timestamp:
Jan 16, 2020, 4:20:37 PM (5 years ago)
Author:
Dmitry Portnoy <dmitry.portnoy@…>
Branches:
feature/imgui-sdl, master, points-test
Children:
4ece3bf
Parents:
0fe8433
Message:

In VulkanGame, add the asteroid shader pipeline and start implementing asteroids flying at the player from the top of the screen

File:
1 edited

Legend:

Unmodified
Added
Removed
  • vulkan-game.hpp

    r0fe8433 r3e8cc8b  
    4040};
    4141
     42struct AsteroidVertex {
     43   vec3 pos;
     44   vec3 color;
     45   vec3 normal;
     46   unsigned int objIndex;
     47};
     48
    4249// TODO: Change the index type to uint32_t and check the Vulkan Tutorial loading model section as a reference
    4350// TODO: Create a typedef for index type so I can easily change uin16_t to something else later
     
    5865struct SBO_SceneObject {
    5966   alignas(16) mat4 model;
     67};
     68
     69struct SBO_Asteroid {
     70   alignas(16) mat4 model;
     71   alignas(4) float hp;
    6072};
    6173
     
    130142      // variables to better reflect the data they hold
    131143
     144      // TODO: Create a struct that holds the buffers, memory, and info objects (Probably in VulkanUtils)
     145
    132146      GraphicsPipeline_Vulkan<OverlayVertex> overlayPipeline;
    133147
     
    142156      vector<VkBuffer> uniformBuffers_scenePipeline;
    143157      vector<VkDeviceMemory> uniformBuffersMemory_scenePipeline;
    144 
    145158      vector<VkDescriptorBufferInfo> uniformBufferInfoList_scenePipeline;
    146159
    147160      vector<VkBuffer> storageBuffers_scenePipeline;
    148161      vector<VkDeviceMemory> storageBuffersMemory_scenePipeline;
    149 
    150162      vector<VkDescriptorBufferInfo> storageBufferInfoList_scenePipeline;
    151163
     
    159171      vector<VkBuffer> uniformBuffers_shipPipeline;
    160172      vector<VkDeviceMemory> uniformBuffersMemory_shipPipeline;
    161 
    162173      vector<VkDescriptorBufferInfo> uniformBufferInfoList_shipPipeline;
    163174
    164175      vector<VkBuffer> storageBuffers_shipPipeline;
    165176      vector<VkDeviceMemory> storageBuffersMemory_shipPipeline;
    166 
    167177      vector<VkDescriptorBufferInfo> storageBufferInfoList_shipPipeline;
    168178
    169179      UBO_VP_mats ship_VP_mats;
    170180      SBO_SceneObject so_Ship;
     181
     182      GraphicsPipeline_Vulkan<AsteroidVertex> asteroidPipeline;
     183
     184      vector<SceneObject<AsteroidVertex>> asteroidObjects;
     185
     186      vector<VkBuffer> uniformBuffers_asteroidPipeline;
     187      vector<VkDeviceMemory> uniformBuffersMemory_asteroidPipeline;
     188      vector<VkDescriptorBufferInfo> uniformBufferInfoList_asteroidPipeline;
     189
     190      vector<VkBuffer> storageBuffers_asteroidPipeline;
     191      vector<VkDeviceMemory> storageBuffersMemory_asteroidPipeline;
     192      vector<VkDescriptorBufferInfo> storageBufferInfoList_asteroidPipeline;
     193
     194      UBO_VP_mats asteroid_VP_mats;
     195      SBO_Asteroid so_Asteroid;
    171196
    172197      bool initWindow(int width, int height, unsigned char guiFlags);
Note: See TracChangeset for help on using the changeset viewer.