mirror of
https://github.com/seekrs/MacroLibX.git
synced 2026-01-12 15:13:34 +00:00
working textures
This commit is contained in:
@@ -6,7 +6,7 @@
|
||||
/* By: maldavid <kbz_8.dev@akel-engine.com> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2022/10/04 17:36:44 by maldavid #+# #+# */
|
||||
/* Updated: 2023/04/01 11:55:19 by maldavid ### ########.fr */
|
||||
/* Updated: 2023/04/01 15:40:30 by maldavid ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
@@ -45,6 +45,18 @@ namespace mlx
|
||||
_renderer->getPixelPutPipeline().setPixel(x, y, color);
|
||||
}
|
||||
|
||||
void MLX_Window::texture_put(std::shared_ptr<Texture> texture, int x, int y)
|
||||
{
|
||||
if(texture->getSet() == VK_NULL_HANDLE)
|
||||
texture->setDescriptor(_renderer->getFragDescriptorSet().duplicate());
|
||||
texture->updateSet(0);
|
||||
std::vector<VkDescriptorSet> sets;
|
||||
sets.push_back(_renderer->getVertDescriptorSet().get());
|
||||
sets.push_back(texture->getSet());
|
||||
vkCmdBindDescriptorSets(_renderer->getActiveCmdBuffer().get(), VK_PIPELINE_BIND_POINT_GRAPHICS, _renderer->getPipeline().getPipelineLayout(), 0, sets.size(), sets.data(), 0, nullptr);
|
||||
texture->render(*_renderer, x, y);
|
||||
}
|
||||
|
||||
void MLX_Window::endFrame()
|
||||
{
|
||||
auto cmd_buff = _renderer->getActiveCmdBuffer().get();
|
||||
@@ -54,9 +66,7 @@ namespace mlx
|
||||
std::vector<VkDescriptorSet> sets;
|
||||
sets.push_back(_renderer->getVertDescriptorSet().get());
|
||||
sets.push_back(_renderer->getPixelPutPipeline().getDescriptorSet());
|
||||
|
||||
vkCmdBindDescriptorSets(cmd_buff, VK_PIPELINE_BIND_POINT_GRAPHICS, _renderer->getPipeline().getPipelineLayout(), 0, sets.size(), sets.data(), 0, nullptr);
|
||||
|
||||
_renderer->getPixelPutPipeline().render(*_renderer);
|
||||
|
||||
_renderer->endFrame();
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
/* By: maldavid <kbz_8.dev@akel-engine.com> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2022/10/04 21:53:12 by maldavid #+# #+# */
|
||||
/* Updated: 2023/04/01 11:54:09 by maldavid ### ########.fr */
|
||||
/* Updated: 2023/04/01 15:27:51 by maldavid ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
#include <string>
|
||||
#include <memory>
|
||||
#include <renderer/renderer.h>
|
||||
#include <renderer/images/vk_image.h>
|
||||
#include <renderer/images/texture.h>
|
||||
#include <renderer/buffers/vk_buffer.h>
|
||||
|
||||
namespace mlx
|
||||
@@ -34,6 +34,7 @@ namespace mlx
|
||||
void endFrame();
|
||||
|
||||
void pixel_put(int x, int y, int color);
|
||||
void texture_put(std::shared_ptr<Texture> texture, int x, int y);
|
||||
|
||||
~MLX_Window();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user