BlenderConnection::compileWorld() stub

This commit is contained in:
Jack Andersen 2016-09-30 12:41:01 -10:00
parent 68a0fb89da
commit 835976be56
3 changed files with 31 additions and 1 deletions

2
hecl/extern/boo vendored

@ -1 +1 @@
Subproject commit 10988fa37efa49b77d3f361b91faf1ab7d87ced5
Subproject commit 51a097da6bf0c2b3f101aa922e2597eaed239c54

View File

@ -581,6 +581,12 @@ public:
ColMesh(BlenderConnection& conn);
};
/** Intermediate world representation */
struct World
{
World(BlenderConnection& conn);
};
/** Intermediate lamp representation */
struct Light
{
@ -630,6 +636,9 @@ public:
Mesh compileAllMeshes(HMDLTopology topology, int skinSlotCount=10, float maxOctantLength=5.0,
Mesh::SurfProgFunc surfProg=[](int){});
/** Compile world intermediate (WORLD blends only) */
World compileWorld();
/** Gather all lights in scene (AREA blends only) */
std::vector<Light> compileLights();

View File

@ -1001,6 +1001,10 @@ BlenderConnection::DataStream::ColMesh::Triangle::Triangle(BlenderConnection& co
conn._readBuf(this, 16);
}
BlenderConnection::DataStream::World::World(BlenderConnection& conn)
{
}
BlenderConnection::DataStream::Light::Light(BlenderConnection& conn)
: sceneXf(conn), color(conn)
{
@ -1306,6 +1310,23 @@ BlenderConnection::DataStream::Actor BlenderConnection::DataStream::compileActor
return Actor(*m_parent);
}
BlenderConnection::DataStream::World
BlenderConnection::DataStream::compileWorld()
{
if (m_parent->m_loadedType != BlendType::World)
BlenderLog.report(logvisor::Fatal, _S("%s is not an WORLD blend"),
m_parent->m_loadedBlend.getAbsolutePath().c_str());
m_parent->_writeLine("WORLDCOMPILE");
char readBuf[256];
m_parent->_readLine(readBuf, 256);
if (strcmp(readBuf, "OK"))
BlenderLog.report(logvisor::Fatal, "unable to compile world: %s", readBuf);
return World(*m_parent);
}
std::vector<std::string> BlenderConnection::DataStream::getArmatureNames()
{
if (m_parent->m_loadedType != BlendType::Actor)