mirror of
https://github.com/MobileGL-Dev/MobileGL
synced 2026-09-12 06:08:30 +09:00
[Fix] (MG_Backend/DirectGLES|MG_State/BufferState): Fix crash.
This commit is contained in:
@@ -27,7 +27,6 @@ namespace MobileGL::MG_Backend::DirectGLES {
|
|||||||
buffersToSync.push_back(bufferObject);
|
buffersToSync.push_back(bufferObject);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const auto& possibleIBO = currentVAOObject->GetIndexBufferBindingSlot().GetBoundObject();
|
const auto& possibleIBO = currentVAOObject->GetIndexBufferBindingSlot().GetBoundObject();
|
||||||
if (possibleIBO) {
|
if (possibleIBO) {
|
||||||
buffersToSync.push_back(possibleIBO);
|
buffersToSync.push_back(possibleIBO);
|
||||||
@@ -37,7 +36,7 @@ namespace MobileGL::MG_Backend::DirectGLES {
|
|||||||
for (auto& bufferObject : buffersToSync) {
|
for (auto& bufferObject : buffersToSync) {
|
||||||
const auto& backendBufferIt = g_backendBufferObjects.find(bufferObject);
|
const auto& backendBufferIt = g_backendBufferObjects.find(bufferObject);
|
||||||
SharedPtr<BackendBufferObject> backendBufferObject;
|
SharedPtr<BackendBufferObject> backendBufferObject;
|
||||||
if (backendBufferIt != g_backendBufferObjects.end()) {
|
if (backendBufferIt == g_backendBufferObjects.end()) {
|
||||||
backendBufferObject = MakeShared<BackendBufferObject>();
|
backendBufferObject = MakeShared<BackendBufferObject>();
|
||||||
g_backendBufferObjects[bufferObject] = backendBufferObject;
|
g_backendBufferObjects[bufferObject] = backendBufferObject;
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
#include "GL_Drawing.h"
|
#include "GL_Drawing.h"
|
||||||
#include <Config.h>
|
#include <Config.h>
|
||||||
#include <MG_State/GLState/Core.h>
|
#include <MG_State/GLState/Core.h>
|
||||||
#include <MG_Util/BackendLoaders/OpenGL/Loader.h>
|
|
||||||
#include <MG_Backend/DirectGLES/DirectGLES.h>
|
#include <MG_Backend/DirectGLES/DirectGLES.h>
|
||||||
|
#include <MG_Util/BackendLoaders/OpenGL/Loader.h>
|
||||||
|
|
||||||
namespace MobileGL {
|
namespace MobileGL {
|
||||||
namespace MG_Impl::GLImpl {
|
namespace MG_Impl::GLImpl {
|
||||||
|
|||||||
@@ -1,11 +1,13 @@
|
|||||||
#include "BufferObject.h"
|
#include "BufferObject.h"
|
||||||
|
#include "MG_Util/Types.h"
|
||||||
|
|
||||||
namespace MobileGL {
|
namespace MobileGL {
|
||||||
namespace MG_State {
|
namespace MG_State {
|
||||||
namespace GLState {
|
namespace GLState {
|
||||||
BufferObject::BufferObject()
|
BufferObject::BufferObject()
|
||||||
: m_id(0), m_size(0), m_usage(BufferUsage::StaticDraw), m_isMapped(false),
|
: m_id(0), m_size(0), m_usage(BufferUsage::StaticDraw), m_isMapped(false),
|
||||||
m_mappingAccess(BufferMappingAccessBit::Null), m_dirtyRange({0, 0}), m_mappedRange({0, 0}) {}
|
m_mappingAccess(BufferMappingAccessBit::Null), m_dirtyRange({0, 0}), m_mappedRange({0, 0}),
|
||||||
|
m_dataPtr(MakeShared<Data>()) {}
|
||||||
|
|
||||||
void BufferObject::Resize(SizeT size) {
|
void BufferObject::Resize(SizeT size) {
|
||||||
m_size = size;
|
m_size = size;
|
||||||
|
|||||||
Reference in New Issue
Block a user