| 113 | } |
| 114 | |
| 115 | void Application::LoadResources() { |
| 116 | InitVertexFormats(); |
| 117 | |
| 118 | streamBuffer = BE1::rhi.CreateBuffer(BE1::RHI::BufferType::Vertex, BE1::RHI::BufferUsage::Stream, 0); |
| 119 | |
| 120 | const Vertex3D verts[] = { |
| 121 | { BE1::Vec3(-200, 200, 0), BE1::Vec2(0, 0), 0xFFFFFFFF }, |
| 122 | { BE1::Vec3(-200, -200, 0), BE1::Vec2(0, 1), 0xFFFFFFFF }, |
| 123 | { BE1::Vec3( 200, -200, 0), BE1::Vec2(1, 1), 0xFFFFFFFF }, |
| 124 | { BE1::Vec3( 200, -200, 0), BE1::Vec2(1, 1), 0xFFFFFFFF }, |
| 125 | { BE1::Vec3( 200, 200, 0), BE1::Vec2(1, 0), 0xFFFFFFFF }, |
| 126 | { BE1::Vec3(-200, 200, 0), BE1::Vec2(0, 0), 0xFFFFFFFF } |
| 127 | }; |
| 128 | |
| 129 | defaultVertexBuffer = BE1::rhi.CreateBuffer(BE1::RHI::BufferType::Vertex, BE1::RHI::BufferUsage::Static, sizeof(Vertex3D) * COUNT_OF(verts), 0, verts); |
| 130 | |
| 131 | BE1::Image *image = BE1::Image::NewImageFromFile("Data/EngineTextures/checker.dds"); |
| 132 | if (!image->IsEmpty()) { |
| 133 | defaultTexture = BE1::rhi.CreateTexture(BE1::RHI::TextureType::Texture2D); |
| 134 | BE1::rhi.BindTexture(defaultTexture); |
| 135 | BE1::rhi.SetTextureImage(BE1::RHI::TextureType::Texture2D, image, image->GetFormat(), true, true); |
| 136 | BE1::rhi.SetTextureAddressMode(BE1::RHI::AddressMode::Clamp); |
| 137 | BE1::rhi.SetTextureFilter(BE1::RHI::TextureFilter::LinearMipmapLinear); |
| 138 | BE1::rhi.BindTexture(BE1::RHI::NullTexture); |
| 139 | delete image; |
| 140 | } |
| 141 | |
| 142 | InitShaders(); |
| 143 | |
| 144 | renderTargetTexture = BE1::rhi.CreateTexture(BE1::RHI::TextureType::Texture2D); |
| 145 | BE1::Image rtImage; |
| 146 | rtImage.InitFromMemory(200, 200, 1, 1, 1, BE1::Image::Format::RGBA_8_8_8_8, BE1::Image::GammaSpace::sRGB, nullptr, 0); |
| 147 | |
| 148 | BE1::rhi.BindTexture(renderTargetTexture); |
| 149 | BE1::rhi.SetTextureImage(BE1::RHI::TextureType::Texture2D, &rtImage, BE1::Image::Format::RGBA_8_8_8_8, false, true); |
| 150 | BE1::rhi.SetTextureAddressMode(BE1::RHI::AddressMode::Clamp); |
| 151 | BE1::rhi.SetTextureFilter(BE1::RHI::TextureFilter::Linear); |
| 152 | } |
| 153 | |
| 154 | void Application::FreeResources() { |
| 155 | BE1::rhi.DestroyTexture(defaultTexture); |
no test coverage detected