Merge branch 'master' into NDK-ShadowMapping

Former-commit-id: e2be28b65207dfbb81efe58f31ca31548afecee7
This commit is contained in:
Lynix
2016-04-17 19:57:15 +02:00
354 changed files with 24993 additions and 2830 deletions

View File

@@ -67,7 +67,7 @@ namespace Nz
}
BufferMapper<VertexBuffer> mapper(s_vertexBuffer, BufferAccess_DiscardAndWrite, 0, 24);
VertexStruct_XYZ* vertex = reinterpret_cast<VertexStruct_XYZ*>(mapper.GetPointer());
VertexStruct_XYZ* vertex = static_cast<VertexStruct_XYZ*>(mapper.GetPointer());
Vector3f max, min;
max = box.GetMaximum();
@@ -158,7 +158,7 @@ namespace Nz
}
BufferMapper<VertexBuffer> mapper(s_vertexBuffer, BufferAccess_DiscardAndWrite, 0, 24);
VertexStruct_XYZ* vertex = reinterpret_cast<VertexStruct_XYZ*>(mapper.GetPointer());
VertexStruct_XYZ* vertex = static_cast<VertexStruct_XYZ*>(mapper.GetPointer());
vertex->position.Set(frustum.GetCorner(BoxCorner_NearLeftBottom));
vertex++;
@@ -240,7 +240,7 @@ namespace Nz
}
BufferMapper<VertexBuffer> mapper(s_vertexBuffer, BufferAccess_DiscardAndWrite, 0, 24);
VertexStruct_XYZ* vertex = reinterpret_cast<VertexStruct_XYZ*>(mapper.GetPointer());
VertexStruct_XYZ* vertex = static_cast<VertexStruct_XYZ*>(mapper.GetPointer());
vertex->position.Set(orientedBox.GetCorner(BoxCorner_NearLeftBottom));
vertex++;
@@ -329,7 +329,7 @@ namespace Nz
}
BufferMapper<VertexBuffer> mapper(s_vertexBuffer, BufferAccess_DiscardAndWrite, 0, jointCount*2);
VertexStruct_XYZ* vertex = reinterpret_cast<VertexStruct_XYZ*>(mapper.GetPointer());
VertexStruct_XYZ* vertex = static_cast<VertexStruct_XYZ*>(mapper.GetPointer());
unsigned int vertexCount = 0;
for (unsigned int i = 0; i < jointCount; ++i)
@@ -407,8 +407,8 @@ namespace Nz
BufferMapper<VertexBuffer> inputMapper(subMesh->GetVertexBuffer(), BufferAccess_ReadOnly);
BufferMapper<VertexBuffer> outputMapper(s_vertexBuffer, BufferAccess_DiscardAndWrite, 0, vertexCount);
MeshVertex* inputVertex = reinterpret_cast<MeshVertex*>(inputMapper.GetPointer());
VertexStruct_XYZ* outputVertex = reinterpret_cast<VertexStruct_XYZ*>(outputMapper.GetPointer());
MeshVertex* inputVertex = static_cast<MeshVertex*>(inputMapper.GetPointer());
VertexStruct_XYZ* outputVertex = static_cast<VertexStruct_XYZ*>(outputMapper.GetPointer());
for (unsigned int i = 0; i < normalCount; ++i)
{
@@ -449,7 +449,7 @@ namespace Nz
transformMatrix.SetTranslation(origin);
BufferMapper<VertexBuffer> mapper(s_vertexBuffer, BufferAccess_DiscardAndWrite, 0, 16);
VertexStruct_XYZ* vertex = reinterpret_cast<VertexStruct_XYZ*>(mapper.GetPointer());
VertexStruct_XYZ* vertex = static_cast<VertexStruct_XYZ*>(mapper.GetPointer());
// On calcule le reste des points
Vector3f base(Vector3f::Forward()*length);
@@ -575,8 +575,8 @@ namespace Nz
BufferMapper<VertexBuffer> inputMapper(subMesh->GetVertexBuffer(), BufferAccess_ReadOnly);
BufferMapper<VertexBuffer> outputMapper(s_vertexBuffer, BufferAccess_DiscardAndWrite, 0, vertexCount);
MeshVertex* inputVertex = reinterpret_cast<MeshVertex*>(inputMapper.GetPointer());
VertexStruct_XYZ* outputVertex = reinterpret_cast<VertexStruct_XYZ*>(outputMapper.GetPointer());
MeshVertex* inputVertex = static_cast<MeshVertex*>(inputMapper.GetPointer());
VertexStruct_XYZ* outputVertex = static_cast<VertexStruct_XYZ*>(outputMapper.GetPointer());
for (unsigned int i = 0; i < normalCount; ++i)
{
@@ -622,8 +622,8 @@ namespace Nz
BufferMapper<VertexBuffer> inputMapper(subMesh->GetVertexBuffer(), BufferAccess_ReadOnly);
BufferMapper<VertexBuffer> outputMapper(s_vertexBuffer, BufferAccess_DiscardAndWrite, 0, vertexCount);
MeshVertex* inputVertex = reinterpret_cast<MeshVertex*>(inputMapper.GetPointer());
VertexStruct_XYZ* outputVertex = reinterpret_cast<VertexStruct_XYZ*>(outputMapper.GetPointer());
MeshVertex* inputVertex = static_cast<MeshVertex*>(inputMapper.GetPointer());
VertexStruct_XYZ* outputVertex = static_cast<VertexStruct_XYZ*>(outputMapper.GetPointer());
for (unsigned int i = 0; i < tangentCount; ++i)
{

View File

@@ -19,7 +19,7 @@ namespace Nz
Context::EnsureContext();
m_id = 0;
glGenQueries(1, reinterpret_cast<GLuint*>(&m_id));
glGenQueries(1, static_cast<GLuint*>(&m_id));
#ifdef NAZARA_DEBUG
if (!m_id)

View File

@@ -2099,7 +2099,6 @@ namespace Nz
};
static_assert(VertexComponent_Max + 1 == 16, "Attribute index array is incomplete");
}
PFNGLACTIVETEXTUREPROC glActiveTexture = nullptr;
PFNGLATTACHSHADERPROC glAttachShader = nullptr;
@@ -2283,3 +2282,5 @@ GLX::PFNGLXSWAPINTERVALEXTPROC glXSwapIntervalEXT = nullptr;
GLX::PFNGLXSWAPINTERVALMESAPROC NzglXSwapIntervalMESA = nullptr;
GLX::PFNGLXSWAPINTERVALSGIPROC glXSwapIntervalSGI = nullptr;
#endif
}

View File

@@ -623,14 +623,14 @@ namespace Nz
s_updateFlags = Update_Matrices | Update_Shader | Update_VAO;
s_vertexBuffer = nullptr;
s_fullscreenQuadBuffer.Reset(VertexDeclaration::Get(VertexLayout_XY), 4, DataStorage_Hardware, BufferUsage_Static);
s_fullscreenQuadBuffer.Reset(VertexDeclaration::Get(VertexLayout_XY_UV), 4, DataStorage_Hardware, BufferUsage_Static);
float vertices[4 * 2] =
float vertices[4 * 2 * 2] =
{
-1.f, -1.f,
1.f, -1.f,
-1.f, 1.f,
1.f, 1.f,
-1.f, -1.f, 0.f, 1.f,
1.f, -1.f, 1.f, 1.f,
-1.f, 1.f, 0.f, 0.f,
1.f, 1.f, 1.f, 0.f
};
if (!s_fullscreenQuadBuffer.Fill(vertices, 0, 4))

View File

@@ -825,6 +825,30 @@ namespace Nz
return Update(image, Rectui(0, 0, faceSize, faceSize), face);
}
bool Texture::SaveToFile(const String& filePath, const ImageParams& params)
{
Image image;
if (!Download(&image))
{
NazaraError("Failed to download texture");
return false;
}
return image.SaveToFile(filePath, params);
}
bool Texture::SaveToStream(Stream& stream, const String& format, const ImageParams& params)
{
Image image;
if (!Download(&image))
{
NazaraError("Failed to download texture");
return false;
}
return image.SaveToStream(stream, format, params);
}
bool Texture::SetMipmapRange(UInt8 minLevel, UInt8 maxLevel)
{
#if NAZARA_RENDERER_SAFE