Merge branch 'master' into fix-x-importer-breakage-introduced-in-f844c33

pull/5372/head
Kim Kulling 2024-01-12 11:05:55 +01:00 committed by GitHub
commit 23424bbb05
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
93 changed files with 973 additions and 244 deletions

View File

@ -16,7 +16,7 @@ jobs:
strategy:
fail-fast: false
matrix:
name: [ubuntu-latest-g++, macos-latest-clang++, windows-latest-cl.exe, ubuntu-latest-clang++, ubuntu-gcc-hunter, macos-clang-hunter, windows-msvc-hunter]
name: [ubuntu-latest-g++, macos-latest-clang++, windows-latest-cl.exe, ubuntu-latest-clang++]
# For Windows msvc, for Linux and macOS let's use the clang compiler, use gcc for Linux.
include:
- name: windows-latest-cl.exe
@ -35,15 +35,6 @@ jobs:
os: ubuntu-latest
cxx: g++
cc: gcc
- name: ubuntu-gcc-hunter
os: ubuntu-latest
toolchain: ninja-gcc-cxx17-fpic
- name: macos-clang-hunter
os: macos-latest
toolchain: ninja-clang-cxx17-fpic
- name: windows-msvc-hunter
os: windows-latest
toolchain: ninja-vs-win64-cxx17
steps:
- uses: actions/checkout@v4
@ -55,25 +46,11 @@ jobs:
- uses: ilammy/msvc-dev-cmd@v1
- name: Set Compiler Environment
if: "!endsWith(matrix.name, 'hunter')"
uses: lukka/set-shell-env@v1
with:
CXX: ${{ matrix.cxx }}
CC: ${{ matrix.cc }}
- name: Set Compiler Environment for Hunter on Windows
if: startsWith(matrix.name, 'windows') && endsWith(matrix.name, 'hunter')
uses: lukka/set-shell-env@v1
with:
VS160COMNTOOLS: C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\Tools
- name: Checkout Hunter toolchains
if: endsWith(matrix.name, 'hunter')
uses: actions/checkout@v4
with:
repository: cpp-pm/polly
path: cmake/polly
- name: Cache DX SDK
id: dxcache
if: contains(matrix.name, 'windows')
@ -121,7 +98,7 @@ jobs:
run: cd build/bin && ./unit ${{ steps.hunter_extra_test_args.outputs.args }}
shell: bash
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
if: matrix.name == 'windows-msvc'
with:
name: 'assimp-bins-${{ matrix.name }}-${{ github.sha }}'

View File

@ -19,7 +19,7 @@ jobs:
dry-run: false
language: c++
- name: Upload Crash
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
if: failure() && steps.build.outcome == 'success'
with:
name: artifacts

View File

@ -137,7 +137,7 @@ IF (WIN32)
ELSE()
OPTION( ASSIMP_BUILD_ZLIB
"Build your own zlib"
ON
OFF
)
ENDIF()
@ -311,9 +311,9 @@ ELSEIF( MINGW )
SET(CMAKE_C_FLAGS "-fPIC ${CMAKE_C_FLAGS}")
ENDIF()
IF (CMAKE_BUILD_TYPE STREQUAL "Debug")
SET(CMAKE_CXX_FLAGS "-fvisibility=hidden -fno-strict-aliasing -Wall -Wno-long-long -Wa,-mbig-obj -g ${CMAKE_CXX_FLAGS}")
SET(CMAKE_CXX_FLAGS "-fvisibility=hidden -fno-strict-aliasing -Wno-dangling-reference -Wall -Wno-long-long -Wa,-mbig-obj -g ${CMAKE_CXX_FLAGS}")
ELSE()
SET(CMAKE_CXX_FLAGS "-fvisibility=hidden -fno-strict-aliasing -Wall -Wno-long-long -Wa,-mbig-obj -O3 ${CMAKE_CXX_FLAGS}")
SET(CMAKE_CXX_FLAGS "-fvisibility=hidden -fno-strict-aliasing -Wno-dangling-reference -Wall -Wno-long-long -Wa,-mbig-obj -O3 ${CMAKE_CXX_FLAGS}")
ENDIF()
SET(CMAKE_C_FLAGS "-fno-strict-aliasing ${CMAKE_C_FLAGS}")
ENDIF()

View File

@ -6,6 +6,7 @@ RUN apt-get update && apt-get install -y ninja-build \
RUN add-apt-repository ppa:ubuntu-toolchain-r/test && apt-get update
WORKDIR /opt
RUN apt install zlib1g-dev
# Build Assimp
RUN git clone https://github.com/assimp/assimp.git /opt/assimp

View File

@ -16,26 +16,27 @@ APIs are provided for C and C++. There are various bindings to other languages (
Additionally, assimp features various __mesh post-processing tools__: normals and tangent space generation, triangulation, vertex cache locality optimization, removal of degenerate primitives and duplicate vertices, sorting by primitive type, merging of redundant materials and many more.
### Documentation ###
Please check the latest documents at [Asset-Importer-Lib-Doc](https://assimp-docs.readthedocs.io/en/latest/).
Read [our latest documentation](https://assimp-docs.readthedocs.io/en/latest/).
### Pre-built binaries ###
Please check our [Itchi Projectspace](https://kimkulling.itch.io/the-asset-importer-lib)
Download binaries from [our Itchi Projectspace](https://kimkulling.itch.io/the-asset-importer-lib).
If you want to check our Model-Database, use the following repo: https://github.com/assimp/assimp-mdb
### Test data ###
Clone [our model database](https://github.com/assimp/assimp-mdb).
### Communities ###
- Ask a question at [The Assimp-Discussion Board](https://github.com/assimp/assimp/discussions)
- Ask on [Assimp-Community on Reddit](https://www.reddit.com/r/Assimp/)
- Ask questions at [the Assimp Discussion Board](https://github.com/assimp/assimp/discussions).
- Ask [the Assimp community on Reddit](https://www.reddit.com/r/Assimp/).
- Ask on [StackOverflow with the assimp-tag](http://stackoverflow.com/questions/tagged/assimp?sort=newest).
- Nothing has worked? File a question or an issue-report at [The Assimp-Issue Tracker](https://github.com/assimp/assimp/issues)
And we also have a Gitter-channel:Gitter [![Join the chat at https://gitter.im/assimp/assimp](https://badges.gitter.im/assimp/assimp.svg)](https://gitter.im/assimp/assimp?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)<br>
#### Supported file formats ####
You can find the complete list of supported file-formats [here](https://github.com/assimp/assimp/blob/master/doc/Fileformats.md)
See [the complete list of supported formats](https://github.com/assimp/assimp/blob/master/doc/Fileformats.md).
### Building ###
Take a look [here](https://github.com/assimp/assimp/blob/master/Build.md) to get started. We are available in vcpkg, and our build system is CMake; if you used CMake before there is a good chance you know what to do.
Start by reading [our build instructions](https://github.com/assimp/assimp/blob/master/Build.md). We are available in vcpkg, and our build system is CMake; if you used CMake before there is a good chance you know what to do.
### Ports ###
* [Android](port/AndroidJNI/README.md)

View File

@ -81,12 +81,17 @@ static constexpr aiImporterDesc desc = {
"3mf"
};
bool D3MFImporter::CanRead(const std::string &filename, IOSystem *pIOHandler, bool /*checkSig*/) const {
bool D3MFImporter::CanRead(const std::string &filename, IOSystem *pIOHandler, bool ) const {
if (!ZipArchiveIOSystem::isZipArchive(pIOHandler, filename)) {
return false;
}
D3MF::D3MFOpcPackage opcPackage(pIOHandler, filename);
return opcPackage.validate();
static const char *const ModelRef = "3D/3dmodel.model";
ZipArchiveIOSystem archive(pIOHandler, filename);
if (!archive.Exists(ModelRef)) {
return false;
}
return true;
}
void D3MFImporter::SetupProperties(const Importer*) {

View File

@ -170,9 +170,9 @@ bool AC3DImporter::GetNextLine() {
// ------------------------------------------------------------------------------------------------
// Parse an object section in an AC file
void AC3DImporter::LoadObjectSection(std::vector<Object> &objects) {
bool AC3DImporter::LoadObjectSection(std::vector<Object> &objects) {
if (!TokenMatch(buffer, "OBJECT", 6))
return;
return false;
SkipSpaces(&buffer);
@ -212,10 +212,14 @@ void AC3DImporter::LoadObjectSection(std::vector<Object> &objects) {
if (num) {
// load the children of this object recursively
obj.children.reserve(num);
for (unsigned int i = 0; i < num; ++i)
LoadObjectSection(obj.children);
for (unsigned int i = 0; i < num; ++i) {
if (!LoadObjectSection(obj.children)) {
ASSIMP_LOG_WARN("AC3D: wrong number of kids");
break;
}
}
}
return;
return true;
} else if (TokenMatch(buffer, "name", 4)) {
SkipSpaces(&buffer);
buffer = AcGetString(buffer, obj.name);
@ -227,9 +231,16 @@ void AC3DImporter::LoadObjectSection(std::vector<Object> &objects) {
}
} else if (TokenMatch(buffer, "texture", 7)) {
SkipSpaces(&buffer);
std::string texture;
buffer = AcGetString(buffer, texture);
obj.textures.push_back(texture);
// skip empty acc texture
if (*buffer != '\"') {
if (!TokenMatch(buffer, "empty_texture_no_mapping", 24)) {
ASSIMP_LOG_ERROR("AC3D: Unquoted texture string");
}
} else {
std::string texture;
buffer = AcGetString(buffer, texture);
obj.textures.push_back(texture);
}
} else if (TokenMatch(buffer, "texrep", 6)) {
SkipSpaces(&buffer);
buffer = TAcCheckedLoadFloatArray(buffer, "", 0, 2, &obj.texRepeat);
@ -340,6 +351,7 @@ void AC3DImporter::LoadObjectSection(std::vector<Object> &objects) {
}
}
ASSIMP_LOG_ERROR("AC3D: Unexpected EOF: \'kids\' line was expected");
return false;
}
// ------------------------------------------------------------------------------------------------
@ -445,7 +457,7 @@ aiNode *AC3DImporter::ConvertObjectSection(Object &object,
idx = 0;
}
if ((*it).entries.empty()) {
ASSIMP_LOG_WARN("AC3D: surface her zero vertex references");
ASSIMP_LOG_WARN("AC3D: surface has zero vertex references");
}
// validate all vertex indices to make sure we won't crash here
@ -574,15 +586,6 @@ aiNode *AC3DImporter::ConvertObjectSection(Object &object,
const Surface::SurfaceEntry &entry2 = src.entries[i + 1];
const Surface::SurfaceEntry &entry3 = src.entries[i + 2];
// skip degenerate triangles
if (object.vertices[entry1.first] == object.vertices[entry2.first] ||
object.vertices[entry1.first] == object.vertices[entry3.first] ||
object.vertices[entry2.first] == object.vertices[entry3.first]) {
mesh->mNumFaces--;
mesh->mNumVertices -= 3;
continue;
}
aiFace &face = *faces++;
face.mNumIndices = 3;
face.mIndices = new unsigned int[face.mNumIndices];
@ -804,8 +807,9 @@ void AC3DImporter::InternReadFile(const std::string &pFile,
buffer = TAcCheckedLoadFloatArray(buffer, "spec", 4, 3, &mat.spec);
buffer = TAcCheckedLoadFloatArray(buffer, "shi", 3, 1, &mat.shin);
buffer = TAcCheckedLoadFloatArray(buffer, "trans", 5, 1, &mat.trans);
} else {
LoadObjectSection(rootObjects);
}
LoadObjectSection(rootObjects);
}
if (rootObjects.empty() || !mNumMeshes) {

View File

@ -216,7 +216,7 @@ private:
* load subobjects, the method returns after a 'kids 0' was
* encountered.
* @objects List of output objects*/
void LoadObjectSection(std::vector<Object> &objects);
bool LoadObjectSection(std::vector<Object> &objects);
// -------------------------------------------------------------------
/** Convert all objects into meshes and nodes.

View File

@ -2725,6 +2725,10 @@ template <> size_t GenericFill<IfcSpatialStructureElement>(const DB& db, const L
do { // convert the 'CompositionType' argument
std::shared_ptr<const DataType> arg = params[base++];
if (dynamic_cast<const ISDERIVED*>(&*arg)) { in->ObjectHelper<Assimp::IFC::Schema_2x3::IfcSpatialStructureElement,2>::aux_is_derived[1]=true; break; }
if (dynamic_cast<const UNSET *>(&*arg)) {
// Consider assigning the default value as in->CompositionType = "ELEMENT".
break;
}
try { GenericConvert( in->CompositionType, arg, db ); break; }
catch (const TypeError& t) { throw TypeError(t.what() + std::string(" - expected argument 8 to IfcSpatialStructureElement to be a `IfcElementCompositionEnum`")); }
} while (false);

View File

@ -1234,7 +1234,10 @@ void IRRImporter::InternReadFile(const std::string &pFile, aiScene *pScene, IOSy
// Parse the XML
// Find the scene root from document root.
const pugi::xml_node &sceneRoot = documentRoot.child("irr_scene");
if (!sceneRoot) throw new DeadlyImportError("IRR: <irr_scene> not found in file");
if (!sceneRoot) {
delete root;
throw new DeadlyImportError("IRR: <irr_scene> not found in file");
}
for (pugi::xml_node &child : sceneRoot.children()) {
// XML elements are either nodes, animators, attributes, or materials
if (!ASSIMP_stricmp(child.name(), "node")) {

View File

@ -123,9 +123,8 @@ aiColor4D MDLImporter::ReplaceTextureWithColor(const aiTexture *pcTexture) {
// Read a texture from a MDL3 file
void MDLImporter::CreateTextureARGB8_3DGS_MDL3(const unsigned char *szData) {
const MDL::Header *pcHeader = (const MDL::Header *)mBuffer; //the endianness is already corrected in the InternReadFile_3DGS_MDL345 function
VALIDATE_FILE_SIZE(szData + pcHeader->skinwidth *
pcHeader->skinheight);
const size_t len = pcHeader->skinwidth * pcHeader->skinheight;
VALIDATE_FILE_SIZE(szData + len);
// allocate a new texture object
aiTexture *pcNew = new aiTexture();

View File

@ -395,7 +395,10 @@ void Q3BSPFileImporter::createTriangleTopology(const Q3BSP::Q3BSPModel *pModel,
m_pCurrentFace->mIndices = new unsigned int[3];
m_pCurrentFace->mIndices[idx] = vertIdx;
}
}
} else {
m_pCurrentFace->mIndices[idx] = vertIdx;
}
pMesh->mVertices[vertIdx].Set(pVertex->vPosition.x, pVertex->vPosition.y, pVertex->vPosition.z);
pMesh->mNormals[vertIdx].Set(pVertex->vNormal.x, pVertex->vNormal.y, pVertex->vNormal.z);

View File

@ -188,6 +188,51 @@ mg_m_err:
pFaces.clear();
}
void X3DGeoHelper::coordIdx_str2lines_arr(const std::vector<int32_t> &pCoordIdx, std::vector<aiFace> &pFaces) {
std::vector<int32_t> f_data(pCoordIdx);
if (f_data.back() != (-1)) {
f_data.push_back(-1);
}
// reserve average size.
pFaces.reserve(f_data.size() / 2);
for (std::vector<int32_t>::const_iterator startIt = f_data.cbegin(), endIt = f_data.cbegin(); endIt != f_data.cend(); ++endIt) {
// check for end of current polyline
if (*endIt != -1)
continue;
// found end of polyline, check if this is a valid polyline
std::size_t numIndices = std::distance(startIt, endIt);
if (numIndices <= 1)
goto mg_m_err;
// create line faces out of polyline indices
for (int32_t idx0 = *startIt++; startIt != endIt; ++startIt) {
int32_t idx1 = *startIt;
aiFace tface;
tface.mNumIndices = 2;
tface.mIndices = new unsigned int[2];
tface.mIndices[0] = idx0;
tface.mIndices[1] = idx1;
pFaces.push_back(tface);
idx0 = idx1;
}
++startIt;
}
return;
mg_m_err:
for (size_t i = 0, i_e = pFaces.size(); i < i_e; i++)
delete[] pFaces[i].mIndices;
pFaces.clear();
}
void X3DGeoHelper::add_color(aiMesh &pMesh, const std::list<aiColor3D> &pColors, const bool pColorPerVertex) {
std::list<aiColor4D> tcol;
@ -528,4 +573,40 @@ aiMesh *X3DGeoHelper::make_mesh(const std::vector<int32_t> &pCoordIdx, const std
return tmesh;
}
aiMesh *X3DGeoHelper::make_line_mesh(const std::vector<int32_t> &pCoordIdx, const std::list<aiVector3D> &pVertices) {
std::vector<aiFace> faces;
// create faces array from input string with vertices indices.
X3DGeoHelper::coordIdx_str2lines_arr(pCoordIdx, faces);
if (!faces.size()) {
throw DeadlyImportError("Failed to create mesh, faces list is empty.");
}
//
// Create new mesh and copy geometry data.
//
aiMesh *tmesh = new aiMesh;
size_t ts = faces.size();
// faces
tmesh->mFaces = new aiFace[ts];
tmesh->mNumFaces = static_cast<unsigned int>(ts);
for (size_t i = 0; i < ts; i++)
tmesh->mFaces[i] = faces[i];
// vertices
std::list<aiVector3D>::const_iterator vit = pVertices.begin();
ts = pVertices.size();
tmesh->mVertices = new aiVector3D[ts];
tmesh->mNumVertices = static_cast<unsigned int>(ts);
for (size_t i = 0; i < ts; i++) {
tmesh->mVertices[i] = *vit++;
}
// set primitive type and return result.
tmesh->mPrimitiveTypes = aiPrimitiveType_LINE;
return tmesh;
}
} // namespace Assimp

View File

@ -21,6 +21,7 @@ public:
static void polylineIdx_to_lineIdx(const std::list<int32_t> &pPolylineCoordIdx, std::list<int32_t> &pLineCoordIdx);
static void rect_parallel_epiped(const aiVector3D &pSize, std::list<aiVector3D> &pVertices);
static void coordIdx_str2faces_arr(const std::vector<int32_t> &pCoordIdx, std::vector<aiFace> &pFaces, unsigned int &pPrimitiveTypes);
static void coordIdx_str2lines_arr(const std::vector<int32_t> &pCoordIdx, std::vector<aiFace> &pFaces);
static void add_color(aiMesh &pMesh, const std::list<aiColor3D> &pColors, const bool pColorPerVertex);
static void add_color(aiMesh &pMesh, const std::list<aiColor4D> &pColors, const bool pColorPerVertex);
static void add_color(aiMesh &pMesh, const std::vector<int32_t> &pCoordIdx, const std::vector<int32_t> &pColorIdx,
@ -34,6 +35,7 @@ public:
const std::list<aiVector2D> &pTexCoords);
static void add_tex_coord(aiMesh &pMesh, const std::list<aiVector2D> &pTexCoords);
static aiMesh *make_mesh(const std::vector<int32_t> &pCoordIdx, const std::list<aiVector3D> &pVertices);
static aiMesh *make_line_mesh(const std::vector<int32_t> &pCoordIdx, const std::list<aiVector3D> &pVertices);
};
} // namespace Assimp

View File

@ -320,7 +320,7 @@ void X3DImporter::Postprocess_BuildMesh(const X3DNodeElementBase &pNodeElement,
// at first search for <Coordinate> node and create mesh.
for (std::list<X3DNodeElementBase *>::iterator ch_it = tnemesh.Children.begin(); ch_it != tnemesh.Children.end(); ++ch_it) {
if ((*ch_it)->Type == X3DElemType::ENET_Coordinate) {
*pMesh = X3DGeoHelper::make_mesh(tnemesh.CoordIndex, ((X3DNodeElementCoordinate *)*ch_it)->Value);
*pMesh = X3DGeoHelper::make_line_mesh(tnemesh.CoordIndex, ((X3DNodeElementCoordinate *)*ch_it)->Value);
}
}

View File

@ -720,7 +720,7 @@ const vec4 defaultBaseColor = { 1, 1, 1, 1 };
const vec3 defaultEmissiveFactor = { 0, 0, 0 };
const vec4 defaultDiffuseFactor = { 1, 1, 1, 1 };
const vec3 defaultSpecularFactor = { 1, 1, 1 };
const vec3 defaultSpecularColorFactor = { 0, 0, 0 };
const vec3 defaultSpecularColorFactor = { 1, 1, 1 };
const vec3 defaultSheenFactor = { 0, 0, 0 };
const vec3 defaultAttenuationColor = { 1, 1, 1 };

View File

@ -1392,7 +1392,7 @@ inline void PbrSpecularGlossiness::SetDefaults() {
inline void MaterialSpecular::SetDefaults() {
//KHR_materials_specular properties
SetVector(specularColorFactor, defaultSpecularColorFactor);
specularFactor = 0.f;
specularFactor = 1.f;
}
inline void MaterialSheen::SetDefaults() {

View File

@ -426,13 +426,14 @@ namespace glTF2 {
if (specular.specularFactor != 0.0f) {
WriteFloat(materialSpecular, specular.specularFactor, "specularFactor", w.mAl);
WriteTex(materialSpecular, specular.specularTexture, "specularTexture", w.mAl);
}
if (specular.specularColorFactor[0] != defaultSpecularColorFactor[0] && specular.specularColorFactor[1] != defaultSpecularColorFactor[1] && specular.specularColorFactor[2] != defaultSpecularColorFactor[2]) {
WriteVec(materialSpecular, specular.specularColorFactor, "specularColorFactor", w.mAl);
WriteTex(materialSpecular, specular.specularColorTexture, "specularColorTexture", w.mAl);
}
WriteTex(materialSpecular, specular.specularTexture, "specularTexture", w.mAl);
WriteTex(materialSpecular, specular.specularColorTexture, "specularColorTexture", w.mAl);
if (!materialSpecular.ObjectEmpty()) {
exts.AddMember("KHR_materials_specular", materialSpecular, w.mAl);
}

View File

@ -730,8 +730,8 @@ bool glTF2Exporter::GetMatSpecular(const aiMaterial &mat, glTF2::MaterialSpecula
} else if (colorFactorIsZero) {
specular.specularColorFactor[0] = specular.specularColorFactor[1] = specular.specularColorFactor[2] = 1.0f;
}
GetMatTex(mat, specular.specularColorTexture, aiTextureType_SPECULAR);
GetMatTex(mat, specular.specularTexture, aiTextureType_SPECULAR);
GetMatTex(mat, specular.specularTexture, aiTextureType_SPECULAR, 0);
GetMatTex(mat, specular.specularColorTexture, aiTextureType_SPECULAR, 1);
return true;
}
@ -912,6 +912,7 @@ void glTF2Exporter::ExportMaterials() {
if (GetMatSpecular(mat, specular)) {
mAsset->extensionsUsed.KHR_materials_specular = true;
m->materialSpecular = Nullable<MaterialSpecular>(specular);
GetMatColor(mat, m->pbrMetallicRoughness.baseColorFactor, AI_MATKEY_COLOR_DIFFUSE);
}
MaterialSheen sheen;

View File

@ -288,8 +288,8 @@ static aiMaterial *ImportMaterial(std::vector<int> &embeddedTexIdxs, Asset &r, M
if (std::memcmp(specular.specularColorFactor, defaultSpecularColorFactor, sizeof(glTFCommon::vec3)) != 0 || specular.specularFactor != 0.0f) {
SetMaterialColorProperty(r, specular.specularColorFactor, aimat, AI_MATKEY_COLOR_SPECULAR);
aimat->AddProperty(&specular.specularFactor, 1, AI_MATKEY_SPECULAR_FACTOR);
SetMaterialTextureProperty(embeddedTexIdxs, r, specular.specularTexture, aimat, aiTextureType_SPECULAR);
SetMaterialTextureProperty(embeddedTexIdxs, r, specular.specularColorTexture, aimat, aiTextureType_SPECULAR);
SetMaterialTextureProperty(embeddedTexIdxs, r, specular.specularTexture, aimat, aiTextureType_SPECULAR, 0);
SetMaterialTextureProperty(embeddedTexIdxs, r, specular.specularColorTexture, aimat, aiTextureType_SPECULAR, 1);
}
}
// pbrSpecularGlossiness

View File

@ -99,12 +99,12 @@ bool DefaultIOSystem::Exists(const char *pFile) const {
return false;
}
#else
FILE *file = ::fopen(pFile, "rb");
if (!file) {
struct stat statbuf;
stat(pFile, &statbuf);
// test for a regular file
if (!S_ISREG(statbuf.st_mode)) {
return false;
}
::fclose(file);
#endif
return true;
@ -116,6 +116,7 @@ IOStream *DefaultIOSystem::Open(const char *strFile, const char *strMode) {
ai_assert(strFile != nullptr);
ai_assert(strMode != nullptr);
FILE *file;
#ifdef _WIN32
std::wstring name = Utf8ToWide(strFile);
if (name.empty()) {
@ -126,6 +127,7 @@ IOStream *DefaultIOSystem::Open(const char *strFile, const char *strMode) {
#else
file = ::fopen(strFile, strMode);
#endif
if (!file) {
return nullptr;
}

View File

@ -89,22 +89,27 @@ using namespace Assimp;
namespace Assimp {
void ExportScenePbrt (
const char* pFile,
IOSystem* pIOSystem,
const aiScene* pScene,
const ExportProperties* /*pProperties*/
){
void ExportScenePbrt(const char *pFile, IOSystem *pIOSystem, const aiScene *pScene,
const ExportProperties *) {
std::string path = DefaultIOSystem::absolutePath(std::string(pFile));
std::string file = DefaultIOSystem::completeBaseName(std::string(pFile));
path = path + file + ".pbrt";
// initialize the exporter
PbrtExporter exporter(pScene, pIOSystem, path, file);
}
} // end of namespace Assimp
// Constructor
static void create_embedded_textures_folder(const aiScene *scene, IOSystem *pIOSystem) {
if (scene->mNumTextures > 0) {
if (!pIOSystem->Exists("textures")) {
if (!pIOSystem->CreateDirectory("textures")) {
throw DeadlyExportError("Could not create textures/ directory.");
}
}
}
}
PbrtExporter::PbrtExporter(
const aiScene *pScene, IOSystem *pIOSystem,
const std::string &path, const std::string &file) :
@ -127,10 +132,10 @@ PbrtExporter::PbrtExporter(
0.f, 0.f, 1.f, 0.f, //
0.f, 0.f, 0.f, 1.f //
) * mRootTransform;
// Export embedded textures.
if (mScene->mNumTextures > 0)
if (!mIOSystem->CreateDirectory("textures"))
throw DeadlyExportError("Could not create textures/ directory.");
create_embedded_textures_folder(mScene, mIOSystem);
for (unsigned int i = 0; i < mScene->mNumTextures; ++i) {
aiTexture* tex = mScene->mTextures[i];
std::string fn = CleanTextureFilename(tex->mFilename, false);
@ -176,9 +181,6 @@ PbrtExporter::PbrtExporter(
outfile->Write(mOutput.str().c_str(), mOutput.str().length(), 1);
}
// Destructor
PbrtExporter::~PbrtExporter() = default;
void PbrtExporter::WriteMetaData() {
mOutput << "#############################\n";
mOutput << "# Scene metadata:\n";

View File

@ -70,15 +70,33 @@ class ExportProperties;
// ---------------------------------------------------------------------
/** Helper class to export a given scene to a Pbrt file. */
// ---------------------------------------------------------------------
class PbrtExporter
{
class PbrtExporter {
public:
/// Constructor for a specific scene to export
PbrtExporter(const aiScene *pScene, IOSystem *pIOSystem,
const std::string &path, const std::string &file);
/// Destructor
virtual ~PbrtExporter();
virtual ~PbrtExporter() = default;
private:
aiMatrix4x4 GetNodeTransform(const aiString &name) const;
static std::string TransformAsString(const aiMatrix4x4 &m);
static std::string RemoveSuffix(std::string filename);
std::string CleanTextureFilename(const aiString &f, bool rewriteExtension = true) const;
void WriteMetaData();
void WriteWorldDefinition();
void WriteCameras();
void WriteCamera(int i);
void WriteLights();
void WriteTextures();
static bool TextureHasAlphaMask(const std::string &filename);
void WriteMaterials();
void WriteMaterial(int i);
void WriteMesh(aiMesh *mesh);
void WriteInstanceDefinition(int i);
void WriteGeometricObjects(aiNode *node, aiMatrix4x4 parentTransform,
std::map<int, int> &meshUses);
private:
// the scene to export
@ -96,39 +114,11 @@ private:
/// Name of the file (without extension) where the scene will be exported
const std::string mFile;
private:
// A private set to keep track of which textures have been declared
std::set<std::string> mTextureSet;
// Transform to apply to the root node and all root objects such as cameras, lights, etc.
aiMatrix4x4 mRootTransform;
aiMatrix4x4 GetNodeTransform(const aiString& name) const;
static std::string TransformAsString(const aiMatrix4x4& m);
static std::string RemoveSuffix(std::string filename);
std::string CleanTextureFilename(const aiString &f, bool rewriteExtension = true) const;
void WriteMetaData();
void WriteWorldDefinition();
void WriteCameras();
void WriteCamera(int i);
void WriteLights();
void WriteTextures();
static bool TextureHasAlphaMask(const std::string &filename);
void WriteMaterials();
void WriteMaterial(int i);
void WriteMesh(aiMesh* mesh);
void WriteInstanceDefinition(int i);
void WriteGeometricObjects(aiNode* node, aiMatrix4x4 parentTransform,
std::map<int, int> &meshUses);
};
} // namespace Assimp

View File

@ -111,6 +111,9 @@ void Sweep::EdgeEvent(SweepContext& tcx, Edge* edge, Node* node)
void Sweep::EdgeEvent(SweepContext& tcx, Point& ep, Point& eq, Triangle* triangle, Point& point)
{
if (triangle == nullptr)
return;
if (IsEdgeSideOfTriangle(*triangle, ep, eq)) {
return;
}

View File

@ -97,7 +97,7 @@ public:
* Create an instance of your derived class and assign it to an
* #Assimp::Importer instance by calling Importer::SetIOHandler().
*/
IOSystem() AI_NO_EXCEPT;
IOSystem() AI_NO_EXCEPT = default;
// -------------------------------------------------------------------
/** @brief Virtual destructor.
@ -105,7 +105,7 @@ public:
* It is safe to be called from within DLL Assimp, we're constructed
* on Assimp's heap.
*/
virtual ~IOSystem();
virtual ~IOSystem() = default;
// -------------------------------------------------------------------
/** @brief For backward compatibility
@ -236,12 +236,6 @@ private:
std::vector<std::string> m_pathStack;
};
// ----------------------------------------------------------------------------
AI_FORCE_INLINE IOSystem::IOSystem() AI_NO_EXCEPT = default;
// ----------------------------------------------------------------------------
AI_FORCE_INLINE IOSystem::~IOSystem() = default;
// ----------------------------------------------------------------------------
// For compatibility, the interface of some functions taking a std::string was
// changed to const char* to avoid crashes between binary incompatible STL

View File

@ -165,6 +165,7 @@ SET( IMPORTERS
unit/ImportExport/MDL/utMDLImporter_HL1_Nodes.cpp
unit/ImportExport/RAW/utRAWImportExport.cpp
unit/ImportExport/Terragen/utTerragenImportExport.cpp
unit/ImportExport/Pbrt/utPbrtImportExport.cpp
)
SET( MATERIAL

View File

@ -0,0 +1,535 @@
AC3Db
MATERIAL "ac3dmat1" rgb 1.00 1.00 1.00 amb 0.20 0.20 0.20 emis 0.00 0.00 0.00 spec 0.20 0.20 0.20 shi 128 trans 0
OBJECT world
kids 2
OBJECT light
name "light"
loc 0.000424567 -0.0127304 0
kids 0
OBJECT poly
name "sphere"
texture "earthSpherical.jpg" base
texture empty_texture_no_mapping tiled
texture empty_texture_no_mapping skids
texture empty_texture_no_mapping shad
numvert 167
-0.051576 -0.062833 0.063067 0.224114 -0.961969 0.156168
-0.064432 -0.064684 0.055841 0.000000 -1.000000 -0.000000
-0.049587 -0.062833 0.055841 0.270337 -0.962554 0.020215
-0.057009 -0.062833 0.068357 0.117917 -0.961035 0.250013
-0.064432 -0.064684 0.055841 0.000000 -1.000000 -0.000000
-0.064432 -0.062833 0.070294 -0.019618 -0.960685 0.276946
-0.064432 -0.064684 0.055841 0.000000 -1.000000 -0.000000
-0.071854 -0.062833 0.068357 -0.151973 -0.961267 0.229935
-0.064432 -0.064684 0.055841 0.000000 -1.000000 -0.000000
-0.077288 -0.062833 0.063067 -0.243865 -0.962202 0.121235
-0.064432 -0.064684 0.055841 0.000000 -1.000000 -0.000000
-0.079277 -0.062833 0.055841 -0.270337 -0.962554 -0.020215
-0.064432 -0.064684 0.055841 0.000000 -1.000000 -0.000000
-0.077288 -0.062833 0.048614 -0.224114 -0.961969 -0.156168
-0.064432 -0.064684 0.055841 0.000000 -1.000000 -0.000000
-0.071854 -0.062833 0.043324 -0.117917 -0.961035 -0.250013
-0.064432 -0.064684 0.055841 0.000000 -1.000000 -0.000000
-0.064432 -0.062833 0.041388 0.019618 -0.960685 -0.276946
-0.064432 -0.064684 0.055841 0.000000 -1.000000 -0.000000
-0.057009 -0.062833 0.043324 0.151973 -0.961267 -0.229935
-0.064432 -0.064684 0.055841 0.000000 -1.000000 -0.000000
-0.049587 0.042114 0.055841 0.270334 0.962554 -0.020215
-0.064432 0.043965 0.055841 0.000000 1.000000 -0.000000
-0.051576 0.042114 0.063067 0.243863 0.962202 0.121233
-0.064432 0.043965 0.055841 0.000000 1.000000 -0.000000
-0.057009 0.042114 0.068357 0.151972 0.961268 0.229933
-0.064432 0.043965 0.055841 0.000000 1.000000 -0.000000
-0.064432 0.042114 0.070294 0.019618 0.960686 0.276944
-0.064432 0.043965 0.055841 0.000000 1.000000 -0.000000
-0.071854 0.042114 0.068357 -0.117915 0.961036 0.250011
-0.064432 0.043965 0.055841 0.000000 1.000000 -0.000000
-0.077288 0.042114 0.063067 -0.224112 0.961970 0.156167
-0.064432 0.043965 0.055841 0.000000 1.000000 -0.000000
-0.079277 0.042114 0.055841 -0.270334 0.962554 0.020215
-0.064432 0.043965 0.055841 0.000000 1.000000 -0.000000
-0.077288 0.042114 0.048614 -0.243863 0.962202 -0.121233
-0.064432 0.043965 0.055841 0.000000 1.000000 -0.000000
-0.071854 0.042114 0.043324 -0.151972 0.961268 -0.229933
-0.064432 0.043965 0.055841 0.000000 1.000000 -0.000000
-0.064432 0.042114 0.041388 -0.019618 0.960686 -0.276944
-0.064432 0.043965 0.055841 0.000000 1.000000 -0.000000
-0.057009 0.042114 0.043324 0.117916 0.961036 -0.250011
-0.035753 -0.057406 0.055841 0.479979 -0.877222 0.010123
-0.049587 -0.062833 0.055841 0.270337 -0.962554 0.020215
-0.051576 -0.062833 0.048614 0.243865 -0.962202 -0.121234
-0.039596 -0.057406 0.041881 0.420061 -0.875943 -0.237219
-0.023874 -0.048773 0.055841 0.687850 -0.725803 0.008451
-0.029308 -0.048773 0.036098 0.598218 -0.723534 -0.344433
-0.014759 -0.037522 0.055841 0.853991 -0.520251 0.006112
-0.021414 -0.037522 0.031661 0.739473 -0.517639 -0.430382
-0.009029 -0.024420 0.055841 0.962274 -0.272063 0.003217
-0.016452 -0.024420 0.028872 0.830450 -0.270187 -0.487187
-0.007075 -0.010360 0.055841 1.000000 -0.000000 0.000000
-0.014759 -0.010360 0.027920 0.860926 0.000265 -0.508731
-0.009029 0.003701 0.055841 0.962274 0.272063 -0.003217
-0.016452 0.003701 0.028872 0.827147 0.270625 -0.492534
-0.014759 0.016803 0.055841 0.853991 0.520251 -0.006112
-0.021414 0.016803 0.031661 0.733264 0.517855 -0.440625
-0.023874 0.028054 0.055841 0.687850 0.725803 -0.008451
-0.029308 0.028054 0.036098 0.589753 0.723523 -0.358756
-0.035753 0.036687 0.055841 0.479979 0.877222 -0.010123
-0.039596 0.036687 0.041881 0.410061 0.875812 -0.254565
-0.049587 0.042114 0.055841 0.270334 0.962554 -0.020215
-0.051576 0.042114 0.048614 0.224112 0.961970 -0.156167
-0.064432 0.043965 0.055841 0.000000 1.000000 -0.000000
-0.064432 -0.064684 0.055841 0.000000 -1.000000 -0.000000
-0.039596 -0.057406 0.069801 0.410061 -0.875812 0.254565
-0.035753 -0.057406 0.055841 0.479979 -0.877222 0.010123
-0.050092 -0.057406 0.080021 0.230454 -0.873143 0.429549
-0.064432 -0.057406 0.083761 -0.009683 -0.871880 0.489625
-0.078771 -0.057406 0.080021 -0.247407 -0.873270 0.419748
-0.089268 -0.057406 0.069801 -0.420061 -0.875942 0.237220
-0.093110 -0.057406 0.055841 -0.479980 -0.877221 -0.010124
-0.089268 -0.057406 0.041881 -0.410062 -0.875812 -0.254565
-0.078771 -0.057406 0.031661 -0.230453 -0.873143 -0.429549
-0.064432 -0.057406 0.027920 0.009684 -0.871880 -0.489625
-0.050092 -0.057406 0.031661 0.247407 -0.873271 -0.419748
-0.029308 -0.048773 0.075583 0.589753 -0.723523 0.358757
-0.023874 -0.048773 0.055841 0.687850 -0.725803 0.008451
-0.044153 -0.048773 0.090036 0.333957 -0.719029 0.609483
-0.064432 -0.048773 0.095326 -0.007940 -0.716811 0.697222
-0.084710 -0.048773 0.090036 -0.348006 -0.719035 0.601564
-0.099555 -0.048773 0.075583 -0.598218 -0.723534 0.344434
-0.104989 -0.048773 0.055841 -0.687850 -0.725804 -0.008451
-0.099555 -0.048773 0.036098 -0.589753 -0.723523 -0.358757
-0.084710 -0.048773 0.021645 -0.333958 -0.719029 -0.609483
-0.064432 -0.048773 0.016355 0.007940 -0.716811 -0.697222
-0.044153 -0.048773 0.021645 0.348006 -0.719035 -0.601565
-0.021414 -0.037522 0.080021 0.733263 -0.517855 0.440625
-0.014759 -0.037522 0.055841 0.853991 -0.520251 0.006112
-0.039596 -0.037522 0.097721 0.416448 -0.512938 0.750643
-0.064432 -0.037522 0.104200 -0.005639 -0.510417 0.859908
-0.089268 -0.037522 0.097721 -0.426533 -0.512723 0.745107
-0.107449 -0.037522 0.080021 -0.739473 -0.517640 0.430382
-0.114104 -0.037522 0.055841 -0.853991 -0.520252 -0.006112
-0.107449 -0.037522 0.031661 -0.733262 -0.517857 -0.440626
-0.089268 -0.037522 0.013960 -0.416448 -0.512938 -0.750643
-0.064432 -0.037522 0.007481 0.005639 -0.510417 -0.859908
-0.039595 -0.037522 0.013960 0.426534 -0.512723 -0.745107
-0.016452 -0.024420 0.082810 0.827147 -0.270625 0.492534
-0.009029 -0.024420 0.055841 0.962274 -0.272063 0.003217
-0.036730 -0.024420 0.102553 0.470709 -0.267377 0.840799
-0.064432 -0.024420 0.109779 -0.002929 -0.265584 0.964083
-0.092133 -0.024420 0.102553 -0.475987 -0.266955 0.837957
-0.112412 -0.024420 0.082810 -0.830450 -0.270188 0.487187
-0.119834 -0.024420 0.055841 -0.962274 -0.272062 -0.003217
-0.112412 -0.024420 0.028872 -0.827148 -0.270623 -0.492534
-0.092133 -0.024420 0.009129 -0.470709 -0.267377 -0.840799
-0.064432 -0.024420 0.001903 0.002929 -0.265584 -0.964083
-0.036730 -0.024420 0.009129 0.475987 -0.266954 -0.837957
-0.014759 -0.010360 0.083761 0.860926 -0.000266 0.508731
-0.007075 -0.010360 0.055841 1.000000 -0.000000 0.000000
-0.035753 -0.010360 0.104200 0.491288 -0.000257 0.870997
-0.064432 -0.010360 0.111682 0.000000 -0.000000 1.000000
-0.093110 -0.010360 0.104200 -0.491288 0.000257 0.870997
-0.114104 -0.010360 0.083761 -0.860926 0.000265 0.508731
-0.121788 -0.010360 0.055841 -1.000000 -0.000001 -0.000001
-0.114104 -0.010360 0.027920 -0.860925 -0.000266 -0.508731
-0.093110 -0.010360 0.007481 -0.491288 -0.000256 -0.870997
-0.064432 -0.010360 0.000000 0.000000 -0.000000 -1.000000
-0.035753 -0.010360 0.007481 0.491288 0.000257 -0.870997
-0.016452 0.003701 0.082810 0.830450 0.270188 0.487187
-0.009029 0.003701 0.055841 0.962274 0.272063 -0.003217
-0.036730 0.003701 0.102553 0.475987 0.266955 0.837957
-0.064432 0.003701 0.109779 0.002929 0.265584 0.964083
-0.092133 0.003701 0.102553 -0.470709 0.267377 0.840799
-0.112412 0.003701 0.082810 -0.827147 0.270625 0.492534
-0.119834 0.003701 0.055841 -0.962274 0.272063 0.003217
-0.112412 0.003701 0.028872 -0.830450 0.270186 -0.487188
-0.092133 0.003701 0.009129 -0.475987 0.266954 -0.837957
-0.064432 0.003701 0.001903 -0.002929 0.265583 -0.964083
-0.036730 0.003701 0.009129 0.470710 0.267376 -0.840799
-0.021414 0.016803 0.080021 0.739473 0.517639 0.430383
-0.014759 0.016803 0.055841 0.853991 0.520251 -0.006112
-0.039596 0.016803 0.097721 0.426533 0.512723 0.745107
-0.064432 0.016803 0.104200 0.005639 0.510417 0.859908
-0.089268 0.016803 0.097721 -0.416448 0.512938 0.750643
-0.107449 0.016803 0.080021 -0.733262 0.517857 0.440626
-0.114104 0.016803 0.055841 -0.853991 0.520252 0.006112
-0.107449 0.016803 0.031661 -0.739473 0.517640 -0.430382
-0.089268 0.016803 0.013960 -0.426533 0.512723 -0.745107
-0.064432 0.016803 0.007481 -0.005640 0.510418 -0.859908
-0.039595 0.016803 0.013960 0.416449 0.512938 -0.750643
-0.029308 0.028054 0.075583 0.598218 0.723534 0.344433
-0.023874 0.028054 0.055841 0.687850 0.725803 -0.008451
-0.044153 0.028054 0.090036 0.348006 0.719035 0.601565
-0.064432 0.028054 0.095326 0.007940 0.716811 0.697222
-0.084710 0.028054 0.090036 -0.333958 0.719029 0.609483
-0.099555 0.028054 0.075583 -0.589753 0.723523 0.358757
-0.104989 0.028054 0.055841 -0.687850 0.725804 0.008451
-0.099555 0.028054 0.036098 -0.598218 0.723534 -0.344434
-0.084710 0.028054 0.021645 -0.348006 0.719035 -0.601564
-0.064432 0.028054 0.016355 -0.007940 0.716811 -0.697222
-0.044153 0.028054 0.021645 0.333956 0.719030 -0.609483
-0.039596 0.036687 0.069801 0.420061 0.875943 0.237219
-0.035753 0.036687 0.055841 0.479979 0.877222 -0.010123
-0.050092 0.036687 0.080021 0.247407 0.873271 0.419748
-0.064432 0.036687 0.083761 0.009684 0.871880 0.489625
-0.078771 0.036687 0.080021 -0.230453 0.873143 0.429549
-0.089268 0.036687 0.069801 -0.410062 0.875812 0.254565
-0.093110 0.036687 0.055841 -0.479980 0.877221 0.010124
-0.089268 0.036687 0.041881 -0.420061 0.875942 -0.237220
-0.078771 0.036687 0.031661 -0.247407 0.873270 -0.419748
-0.064432 0.036687 0.027920 -0.009683 0.871880 -0.489625
-0.050092 0.036687 0.031661 0.230454 0.873143 -0.429549
-0.064432 0.043965 0.055841 0.000000 1.000000 -0.000000
-0.064432 -0.064684 0.055841 0.000000 -1.000000 -0.000000
numsurf 13
SURF 0x14
mat 0
refs 25
166 0.12500 0.00000 0.19898 0.00100 0.23912 -0.60440 0.00000 0.00000
19 0.16667 0.08333 0.20078 0.00100 0.27261 -0.65958 0.06470 0.11207
44 0.08333 0.08333 0.22774 0.00100 0.24337 -0.66338 0.11207 0.06470
45 0.08333 0.16667 0.25662 0.00100 0.24258 -0.70570 0.21651 0.12500
42 -0.00000 0.16667 0.29617 0.00100 0.18165 -0.65455 0.25000 0.00000
45 0.08333 0.16667 0.25662 0.00100 0.24258 -0.70570 0.21651 0.12500
46 -0.00000 0.25000 0.34675 0.00100 0.14154 -0.62617 0.35355 0.00000
47 0.08333 0.25000 0.28254 0.00100 0.23215 -0.72379 0.30619 0.17678
48 -0.00000 0.33333 0.39286 0.00100 0.09463 -0.54477 0.43301 0.00000
49 0.08333 0.33333 0.30010 0.00100 0.20445 -0.70053 0.37500 0.21651
50 -0.00000 0.41667 0.42672 0.00100 0.04684 -0.39635 0.48296 0.00000
51 0.08333 0.41667 0.30053 0.00100 0.14994 -0.59217 0.41826 0.24148
52 -0.00000 0.50000 0.43819 0.27990 0.01216 -0.18101 0.50000 0.00000
53 0.08333 0.50000 0.27797 0.11146 0.07998 -0.31169 0.43301 0.25000
54 -0.00000 0.58333 0.42036 0.71453 0.00746 0.06528 0.48296 0.00000
55 0.08333 0.58333 0.25398 0.77247 0.06825 0.11068 0.41826 0.24148
56 -0.00000 0.66667 0.37732 0.99900 0.03584 0.27934 0.43301 0.00000
57 0.08333 0.66667 0.24356 0.99900 0.12085 0.40243 0.37500 0.21651
58 -0.00000 0.75000 0.32156 0.99900 0.08264 0.41936 0.35355 0.00000
59 0.08333 0.75000 0.23016 0.99900 0.16764 0.51660 0.30619 0.17678
60 -0.00000 0.83333 0.26409 0.99900 0.13155 0.48413 0.25000 0.00000
61 0.08333 0.83333 0.21022 0.99900 0.19350 0.53698 0.21651 0.12500
62 -0.00000 0.91667 0.21082 0.99900 0.17434 0.49121 0.12941 0.00000
63 0.08333 0.91667 0.18721 0.99900 0.20517 0.51082 0.11207 0.06470
64 0.04167 1.00000 0.16417 0.99900 0.20895 0.45830 0.00000 0.00000
SURF 0x14
mat 0
refs 4
42 -0.00000 0.16667 0.29617 0.00100 0.18165 -0.65455 0.25000 0.00000
43 -0.00000 0.08333 0.24596 0.00100 0.21392 -0.64381 0.12941 0.00000
44 0.08333 0.08333 0.22774 0.00100 0.24337 -0.66338 0.11207 0.06470
65 0.04167 0.00000 0.19898 0.00100 0.23912 -0.60440 0.00000 0.00000
SURF 0x14
mat 0
refs 26
41 0.16667 0.91667 0.15686 0.99900 0.23923 0.50697 0.06470 0.11207
165 0.12500 1.00000 0.16417 0.99900 0.20895 0.45830 0.00000 0.00000
41 0.16667 0.91667 0.15686 0.99900 0.23923 0.50697 0.06470 0.11207
63 0.08333 0.91667 0.18721 0.99900 0.20517 0.51082 0.11207 0.06470
164 0.16667 0.83333 0.14064 0.99900 0.27287 0.52638 0.12500 0.21651
61 0.08333 0.83333 0.21022 0.99900 0.19350 0.53698 0.21651 0.12500
153 0.16667 0.75000 0.11005 0.99900 0.30883 0.49554 0.17678 0.30619
59 0.08333 0.75000 0.23016 0.99900 0.16764 0.51660 0.30619 0.17678
142 0.16667 0.66667 0.06221 0.99900 0.34565 0.37156 0.21651 0.37500
57 0.08333 0.66667 0.24356 0.99900 0.12085 0.40243 0.37500 0.21651
131 0.16667 0.58333 0.01707 0.75383 0.37997 0.09731 0.24148 0.41826
55 0.08333 0.58333 0.25398 0.77247 0.06825 0.11068 0.41826 0.24148
120 0.16667 0.50000 0.02917 0.16155 0.40148 -0.27285 0.25000 0.43301
53 0.08333 0.50000 0.27797 0.11146 0.07998 -0.31169 0.43301 0.25000
109 0.16667 0.41667 0.09227 0.00100 0.39866 -0.54216 0.24148 0.41826
51 0.08333 0.41667 0.30053 0.00100 0.14994 -0.59217 0.41826 0.24148
98 0.16667 0.33333 0.14840 0.00100 0.37604 -0.66637 0.21651 0.37500
49 0.08333 0.33333 0.30010 0.00100 0.20445 -0.70053 0.37500 0.21651
87 0.16667 0.25000 0.18125 0.00100 0.34374 -0.70421 0.17678 0.30619
47 0.08333 0.25000 0.28254 0.00100 0.23215 -0.72379 0.30619 0.17678
76 0.16667 0.16667 0.19643 0.00100 0.30813 -0.69579 0.12500 0.21651
45 0.08333 0.16667 0.25662 0.00100 0.24258 -0.70570 0.21651 0.12500
76 0.16667 0.16667 0.19643 0.00100 0.30813 -0.69579 0.12500 0.21651
19 0.16667 0.08333 0.20078 0.00100 0.27261 -0.65958 0.06470 0.11207
17 0.25000 0.08333 0.17478 0.00100 0.29109 -0.63431 0.00000 0.12941
20 0.20833 0.00000 0.19898 0.00100 0.23912 -0.60440 0.00000 0.00000
SURF 0x14
mat 0
refs 26
39 0.25000 0.91667 0.13138 0.99900 0.26321 0.48188 0.00000 0.12941
40 0.20833 1.00000 0.16417 0.99900 0.20895 0.45830 0.00000 0.00000
39 0.25000 0.91667 0.13138 0.99900 0.26321 0.48188 0.00000 0.12941
41 0.16667 0.91667 0.15686 0.99900 0.23923 0.50697 0.06470 0.11207
163 0.25000 0.83333 0.09337 0.99900 0.32380 0.46306 0.00000 0.25000
164 0.16667 0.83333 0.14064 0.99900 0.27287 0.52638 0.12500 0.21651
152 0.25000 0.75000 0.05350 0.99900 0.38666 0.38881 0.00000 0.35355
153 0.16667 0.75000 0.11005 0.99900 0.30883 0.49554 0.17678 0.30619
141 0.25000 0.66667 0.01921 0.99900 0.44417 0.25077 0.00000 0.43301
142 0.16667 0.66667 0.06221 0.99900 0.34565 0.37156 0.21651 0.37500
130 0.25000 0.58333 0.00104 0.70147 0.48527 0.05732 0.00000 0.48296
131 0.16667 0.58333 0.01707 0.75383 0.37997 0.09731 0.24148 0.41826
119 0.25000 0.50000 0.00634 0.30861 0.50000 -0.15875 0.00000 0.50000
120 0.16667 0.50000 0.02917 0.16155 0.40148 -0.27285 0.25000 0.43301
108 0.25000 0.41667 0.03263 0.00100 0.48620 -0.35427 0.00000 0.48296
109 0.16667 0.41667 0.09227 0.00100 0.39866 -0.54216 0.24148 0.41826
97 0.25000 0.33333 0.07009 0.00100 0.45008 -0.50072 0.00000 0.43301
98 0.16667 0.33333 0.14840 0.00100 0.37604 -0.66637 0.21651 0.37500
86 0.25000 0.25000 0.10926 0.00100 0.40081 -0.59156 0.00000 0.35355
87 0.16667 0.25000 0.18125 0.00100 0.34374 -0.70421 0.17678 0.30619
75 0.25000 0.16667 0.14481 0.00100 0.34608 -0.63293 0.00000 0.25000
76 0.16667 0.16667 0.19643 0.00100 0.30813 -0.69579 0.12500 0.21651
75 0.25000 0.16667 0.14481 0.00100 0.34608 -0.63293 0.00000 0.25000
17 0.25000 0.08333 0.17478 0.00100 0.29109 -0.63431 0.00000 0.12941
15 0.33333 0.08333 0.15726 0.00100 0.29335 -0.59942 -0.06470 0.11207
18 0.29167 0.00000 0.19898 0.00100 0.23912 -0.60440 0.00000 0.00000
SURF 0x14
mat 0
refs 26
37 0.33333 0.91667 0.11731 0.99900 0.26926 0.44859 -0.06470 0.11207
38 0.29167 1.00000 0.16417 0.99900 0.20895 0.45830 0.00000 0.00000
37 0.33333 0.91667 0.11731 0.99900 0.26926 0.44859 -0.06470 0.11207
39 0.25000 0.91667 0.13138 0.99900 0.26321 0.48188 0.00000 0.12941
162 0.33333 0.83333 0.07414 0.99900 0.32883 0.39669 -0.12500 0.21651
163 0.25000 0.83333 0.09337 0.99900 0.32380 0.46306 0.00000 0.25000
151 0.33333 0.75000 0.03873 0.99900 0.38213 0.30552 -0.17678 0.30619
152 0.25000 0.75000 0.05350 0.99900 0.38666 0.38881 0.00000 0.35355
140 0.33333 0.66667 0.01433 0.96962 0.42405 0.18283 -0.21651 0.37500
141 0.25000 0.66667 0.01921 0.99900 0.44417 0.25077 0.00000 0.43301
129 0.33333 0.58333 0.00283 0.67965 0.45074 0.03994 -0.24148 0.41826
130 0.25000 0.58333 0.00104 0.70147 0.48527 0.05732 0.00000 0.48296
118 0.33333 0.50000 0.00464 0.37108 0.46020 -0.11023 -0.25000 0.43301
119 0.25000 0.50000 0.00634 0.30861 0.50000 -0.15875 0.00000 0.50000
107 0.33333 0.41667 0.01889 0.06946 0.45233 -0.25504 -0.24148 0.41826
108 0.25000 0.41667 0.03263 0.00100 0.48620 -0.35427 0.00000 0.48296
96 0.33333 0.33333 0.04378 0.00100 0.42865 -0.38353 -0.21651 0.37500
97 0.25000 0.33333 0.07009 0.00100 0.45008 -0.50072 0.00000 0.43301
85 0.33333 0.25000 0.07694 0.00100 0.39190 -0.48717 -0.17678 0.30619
86 0.25000 0.25000 0.10926 0.00100 0.40081 -0.59156 0.00000 0.35355
74 0.33333 0.16667 0.11569 0.00100 0.34553 -0.56015 -0.12500 0.21651
75 0.25000 0.16667 0.14481 0.00100 0.34608 -0.63293 0.00000 0.25000
74 0.33333 0.16667 0.11569 0.00100 0.34553 -0.56015 -0.12500 0.21651
15 0.33333 0.08333 0.15726 0.00100 0.29335 -0.59942 -0.06470 0.11207
13 0.41667 0.08333 0.15134 0.00100 0.28069 -0.56690 -0.11207 0.06470
16 0.37500 0.00000 0.19898 0.00100 0.23912 -0.60440 0.00000 0.00000
SURF 0x14
mat 0
refs 26
35 0.41667 0.91667 0.11568 0.99900 0.25826 0.41884 -0.11207 0.06470
36 0.37500 1.00000 0.16417 0.99900 0.20895 0.45830 0.00000 0.00000
35 0.41667 0.91667 0.11568 0.99900 0.25826 0.41884 -0.11207 0.06470
37 0.33333 0.91667 0.11731 0.99900 0.26926 0.44859 -0.06470 0.11207
161 0.41667 0.83333 0.07575 0.99900 0.30096 0.34871 -0.21651 0.12500
162 0.33333 0.83333 0.07414 0.99900 0.32883 0.39669 -0.12500 0.21651
150 0.41667 0.75000 0.04562 0.99900 0.33524 0.25608 -0.30619 0.17678
151 0.33333 0.75000 0.03873 0.99900 0.38213 0.30552 -0.17678 0.30619
139 0.41667 0.66667 0.02569 0.92724 0.36024 0.14834 -0.37500 0.21651
140 0.33333 0.66667 0.01433 0.96962 0.42405 0.18283 -0.21651 0.37500
128 0.41667 0.58333 0.01596 0.67063 0.37568 0.03187 -0.41826 0.24148
129 0.33333 0.58333 0.00283 0.67965 0.45074 0.03994 -0.24148 0.41826
117 0.41667 0.50000 0.01621 0.39994 0.38162 -0.08785 -0.43301 0.25000
118 0.33333 0.50000 0.00464 0.37108 0.46020 -0.11023 -0.25000 0.43301
106 0.41667 0.41667 0.02609 0.13144 0.37828 -0.20590 -0.41826 0.24148
107 0.33333 0.41667 0.01889 0.06946 0.45233 -0.25504 -0.24148 0.41826
95 0.41667 0.33333 0.04522 0.00100 0.36600 -0.31762 -0.37500 0.21651
96 0.33333 0.33333 0.04378 0.00100 0.42865 -0.38353 -0.21651 0.37500
84 0.41667 0.25000 0.07305 0.00100 0.34519 -0.41833 -0.30619 0.17678
85 0.33333 0.25000 0.07694 0.00100 0.39190 -0.48717 -0.17678 0.30619
73 0.41667 0.16667 0.10881 0.00100 0.31647 -0.50313 -0.21651 0.12500
74 0.33333 0.16667 0.11569 0.00100 0.34553 -0.56015 -0.12500 0.21651
73 0.41667 0.16667 0.10881 0.00100 0.31647 -0.50313 -0.21651 0.12500
13 0.41667 0.08333 0.15134 0.00100 0.28069 -0.56690 -0.11207 0.06470
11 0.50000 0.08333 0.15695 0.00100 0.25836 -0.54379 -0.12941 0.00000
14 0.45833 0.00000 0.19898 0.00100 0.23912 -0.60440 0.00000 0.00000
SURF 0x14
mat 0
refs 26
33 0.50000 0.91667 0.12506 0.99900 0.23590 0.39836 -0.12941 0.00000
34 0.45833 1.00000 0.16417 0.99900 0.20895 0.45830 0.00000 0.00000
33 0.50000 0.91667 0.12506 0.99900 0.23590 0.39836 -0.12941 0.00000
35 0.41667 0.91667 0.11568 0.99900 0.25826 0.41884 -0.11207 0.06470
160 0.50000 0.83333 0.09377 0.99900 0.25637 0.32013 -0.25000 0.00000
161 0.41667 0.83333 0.07575 0.99900 0.30096 0.34871 -0.21651 0.12500
149 0.50000 0.75000 0.07035 0.99900 0.27148 0.22961 -0.35355 0.00000
150 0.41667 0.75000 0.04562 0.99900 0.33524 0.25608 -0.30619 0.17678
138 0.50000 0.66667 0.05477 0.90616 0.28211 0.13113 -0.43301 0.00000
139 0.41667 0.66667 0.02569 0.92724 0.36024 0.14834 -0.37500 0.21651
127 0.50000 0.58333 0.04697 0.66642 0.28889 0.02798 -0.48296 0.00000
128 0.41667 0.58333 0.01596 0.67063 0.37568 0.03187 -0.41826 0.24148
116 0.50000 0.50000 0.04685 0.41393 0.29223 -0.07709 -0.50000 0.00000
117 0.41667 0.50000 0.01621 0.39994 0.38162 -0.08785 -0.43301 0.25000
105 0.50000 0.41667 0.05433 0.16212 0.29232 -0.18164 -0.48296 0.00000
106 0.41667 0.41667 0.02609 0.13144 0.37828 -0.20590 -0.41826 0.24148
94 0.50000 0.33333 0.06929 0.00100 0.28922 -0.28327 -0.43301 0.00000
95 0.41667 0.33333 0.04522 0.00100 0.36600 -0.31762 -0.37500 0.21651
83 0.50000 0.25000 0.09157 0.00100 0.28277 -0.37947 -0.35355 0.00000
84 0.41667 0.25000 0.07305 0.00100 0.34519 -0.41833 -0.30619 0.17678
72 0.50000 0.16667 0.12093 0.00100 0.27266 -0.46743 -0.25000 0.00000
73 0.41667 0.16667 0.10881 0.00100 0.31647 -0.50313 -0.21651 0.12500
72 0.50000 0.16667 0.12093 0.00100 0.27266 -0.46743 -0.25000 0.00000
11 0.50000 0.08333 0.15695 0.00100 0.25836 -0.54379 -0.12941 0.00000
9 0.58333 0.08333 0.17221 0.00100 0.23253 -0.53297 -0.11207 -0.06470
12 0.54167 0.00000 0.19898 0.00100 0.23912 -0.60440 0.00000 0.00000
SURF 0x14
mat 0
refs 26
31 0.58333 0.91667 0.14311 0.99900 0.20878 0.38894 -0.11207 -0.06470
32 0.54167 1.00000 0.16417 0.99900 0.20895 0.45830 0.00000 0.00000
31 0.58333 0.91667 0.14311 0.99900 0.20878 0.38894 -0.11207 -0.06470
33 0.50000 0.91667 0.12506 0.99900 0.23590 0.39836 -0.12941 0.00000
159 0.58333 0.83333 0.12527 0.99900 0.20699 0.30801 -0.21651 -0.12500
160 0.50000 0.83333 0.09377 0.99900 0.25637 0.32013 -0.25000 0.00000
148 0.58333 0.75000 0.11143 0.99900 0.20500 0.21899 -0.30619 -0.17678
149 0.50000 0.75000 0.07035 0.99900 0.27148 0.22961 -0.35355 0.00000
137 0.58333 0.66667 0.10210 0.89651 0.20368 0.12444 -0.37500 -0.21651
138 0.50000 0.66667 0.05477 0.90616 0.28211 0.13113 -0.43301 0.00000
126 0.58333 0.58333 0.09758 0.66389 0.20355 0.02650 -0.41826 -0.24148
127 0.50000 0.58333 0.04697 0.66642 0.28889 0.02798 -0.48296 0.00000
115 0.58333 0.50000 0.09802 0.41933 0.20491 -0.07299 -0.43301 -0.25000
116 0.50000 0.50000 0.04685 0.41393 0.29223 -0.07709 -0.50000 0.00000
104 0.58333 0.41667 0.10346 0.17498 0.20788 -0.17229 -0.41826 -0.24148
105 0.50000 0.41667 0.05433 0.16212 0.29232 -0.18164 -0.48296 0.00000
93 0.58333 0.33333 0.11385 0.00100 0.21242 -0.26969 -0.37500 -0.21651
94 0.50000 0.33333 0.06929 0.00100 0.28922 -0.28327 -0.43301 0.00000
82 0.58333 0.25000 0.12901 0.00100 0.21834 -0.36350 -0.30619 -0.17678
83 0.50000 0.25000 0.09157 0.00100 0.28277 -0.37947 -0.35355 0.00000
71 0.58333 0.16667 0.14863 0.00100 0.22526 -0.45191 -0.21651 -0.12500
72 0.50000 0.16667 0.12093 0.00100 0.27266 -0.46743 -0.25000 0.00000
71 0.58333 0.16667 0.14863 0.00100 0.22526 -0.45191 -0.21651 -0.12500
9 0.58333 0.08333 0.17221 0.00100 0.23253 -0.53297 -0.11207 -0.06470
7 0.66667 0.08333 0.19399 0.00100 0.20888 -0.53519 -0.06470 -0.11207
10 0.62500 0.00000 0.19898 0.00100 0.23912 -0.60440 0.00000 0.00000
SURF 0x14
mat 0
refs 26
29 0.66667 0.91667 0.16656 0.99900 0.18279 0.39086 -0.06470 -0.11207
30 0.62500 1.00000 0.16417 0.99900 0.20895 0.45830 0.00000 0.00000
29 0.66667 0.91667 0.16656 0.99900 0.18279 0.39086 -0.06470 -0.11207
31 0.58333 0.91667 0.14311 0.99900 0.20878 0.38894 -0.11207 -0.06470
158 0.66667 0.83333 0.16659 0.99900 0.16130 0.31057 -0.12500 -0.21651
159 0.58333 0.83333 0.12527 0.99900 0.20699 0.30801 -0.21651 -0.12500
147 0.66667 0.75000 0.16588 0.99900 0.14487 0.22131 -0.17678 -0.30619
148 0.58333 0.75000 0.11143 0.99900 0.20500 0.21899 -0.30619 -0.17678
136 0.66667 0.66667 0.16546 0.89633 0.13378 0.12594 -0.21651 -0.37500
137 0.58333 0.66667 0.10210 0.89651 0.20368 0.12444 -0.37500 -0.21651
125 0.66667 0.58333 0.16597 0.66293 0.12819 0.02683 -0.24148 -0.41826
126 0.58333 0.58333 0.09758 0.66389 0.20355 0.02650 -0.41826 -0.24148
114 0.66667 0.50000 0.16776 0.41811 0.12818 -0.07393 -0.25000 -0.43301
115 0.58333 0.50000 0.09802 0.41933 0.20491 -0.07299 -0.43301 -0.25000
103 0.66667 0.41667 0.17097 0.17362 0.13376 -0.17442 -0.24148 -0.41826
104 0.58333 0.41667 0.10346 0.17498 0.20788 -0.17229 -0.41826 -0.24148
92 0.66667 0.33333 0.17556 0.00100 0.14484 -0.27274 -0.21651 -0.37500
93 0.58333 0.33333 0.11385 0.00100 0.21242 -0.26969 -0.37500 -0.21651
81 0.66667 0.25000 0.18129 0.00100 0.16125 -0.36700 -0.17678 -0.30619
82 0.58333 0.25000 0.12901 0.00100 0.21834 -0.36350 -0.30619 -0.17678
70 0.66667 0.16667 0.18769 0.00100 0.18273 -0.45521 -0.12500 -0.21651
71 0.58333 0.16667 0.14863 0.00100 0.22526 -0.45191 -0.21651 -0.12500
70 0.66667 0.16667 0.18769 0.00100 0.18273 -0.45521 -0.12500 -0.21651
7 0.66667 0.08333 0.19399 0.00100 0.20888 -0.53519 -0.06470 -0.11207
5 0.75000 0.08333 0.21789 0.00100 0.19222 -0.55023 0.00000 -0.12941
8 0.70833 0.00000 0.19898 0.00100 0.23912 -0.60440 0.00000 0.00000
SURF 0x14
mat 0
refs 26
27 0.75000 0.91667 0.19095 0.99900 0.16283 0.40401 0.00000 -0.12941
28 0.70833 1.00000 0.16417 0.99900 0.20895 0.45830 0.00000 0.00000
27 0.75000 0.91667 0.19095 0.99900 0.16283 0.40401 0.00000 -0.12941
29 0.66667 0.91667 0.16656 0.99900 0.18279 0.39086 -0.06470 -0.11207
157 0.75000 0.83333 0.21201 0.99900 0.12561 0.32796 0.00000 -0.25000
158 0.66667 0.83333 0.16659 0.99900 0.16130 0.31057 -0.12500 -0.21651
146 0.75000 0.75000 0.22797 0.99900 0.09754 0.23688 0.00000 -0.35355
147 0.66667 0.75000 0.16588 0.99900 0.14487 0.22131 -0.17678 -0.30619
135 0.75000 0.66667 0.23948 0.90806 0.07868 0.13588 0.00000 -0.43301
136 0.66667 0.66667 0.16546 0.89633 0.13378 0.12594 -0.21651 -0.37500
124 0.75000 0.58333 0.24702 0.66503 0.06897 0.02906 0.00000 -0.48296
125 0.66667 0.58333 0.16597 0.66293 0.12819 0.02683 -0.24148 -0.41826
113 0.75000 0.50000 0.25094 0.41006 0.06830 -0.08009 0.00000 -0.50000
114 0.66667 0.50000 0.16776 0.41811 0.12818 -0.07393 -0.25000 -0.43301
102 0.75000 0.41667 0.25144 0.15617 0.07651 -0.18841 0.00000 -0.48296
103 0.66667 0.41667 0.17097 0.17362 0.13376 -0.17442 -0.24148 -0.41826
91 0.75000 0.33333 0.24857 0.00100 0.09338 -0.29285 0.00000 -0.43301
92 0.66667 0.33333 0.17556 0.00100 0.14484 -0.27274 -0.21651 -0.37500
80 0.75000 0.25000 0.24221 0.00100 0.11860 -0.39028 0.00000 -0.35355
81 0.66667 0.25000 0.18129 0.00100 0.16125 -0.36700 -0.17678 -0.30619
69 0.75000 0.16667 0.23212 0.00100 0.15175 -0.47734 0.00000 -0.25000
70 0.66667 0.16667 0.18769 0.00100 0.18273 -0.45521 -0.12500 -0.21651
69 0.75000 0.16667 0.23212 0.00100 0.15175 -0.47734 0.00000 -0.25000
5 0.75000 0.08333 0.21789 0.00100 0.19222 -0.55023 0.00000 -0.12941
3 0.83333 0.08333 0.23838 0.00100 0.18630 -0.57670 0.06470 -0.11207
6 0.79167 0.00000 0.19898 0.00100 0.23912 -0.60440 0.00000 0.00000
SURF 0x14
mat 0
refs 26
25 0.83333 0.91667 0.21053 0.99900 0.15290 0.42768 0.06470 -0.11207
26 0.79167 1.00000 0.16417 0.99900 0.20895 0.45830 0.00000 0.00000
25 0.83333 0.91667 0.21053 0.99900 0.15290 0.42768 0.06470 -0.11207
27 0.75000 0.91667 0.19095 0.99900 0.16283 0.40401 0.00000 -0.12941
156 0.83333 0.83333 0.25271 0.99900 0.10497 0.36222 0.12500 -0.21651
157 0.75000 0.83333 0.21201 0.99900 0.12561 0.32796 0.00000 -0.25000
145 0.83333 0.75000 0.28799 0.99900 0.06767 0.26941 0.17678 -0.30619
146 0.75000 0.75000 0.22797 0.99900 0.09754 0.23688 0.00000 -0.35355
134 0.83333 0.66667 0.31457 0.93678 0.04237 0.15738 0.21651 -0.37500
135 0.75000 0.66667 0.23948 0.90806 0.07868 0.13588 0.00000 -0.43301
123 0.83333 0.58333 0.33150 0.67193 0.02955 0.03395 0.24148 -0.41826
124 0.75000 0.58333 0.24702 0.66503 0.06897 0.02906 0.00000 -0.48296
112 0.83333 0.50000 0.33844 0.39249 0.02914 -0.09363 0.25000 -0.43301
113 0.75000 0.50000 0.25094 0.41006 0.06830 -0.08009 0.00000 -0.50000
101 0.83333 0.41667 0.33549 0.11627 0.04068 -0.21875 0.24148 -0.41826
102 0.75000 0.41667 0.25144 0.15617 0.07651 -0.18841 0.00000 -0.48296
90 0.83333 0.33333 0.32310 0.00100 0.06342 -0.33527 0.21651 -0.37500
91 0.75000 0.33333 0.24857 0.00100 0.09338 -0.29285 0.00000 -0.43301
79 0.83333 0.25000 0.30202 0.00100 0.09629 -0.43738 0.17678 -0.30619
80 0.75000 0.25000 0.24221 0.00100 0.11860 -0.39028 0.00000 -0.35355
68 0.83333 0.16667 0.27332 0.00100 0.13788 -0.51956 0.12500 -0.21651
69 0.75000 0.16667 0.23212 0.00100 0.15175 -0.47734 0.00000 -0.25000
68 0.83333 0.16667 0.27332 0.00100 0.13788 -0.51956 0.12500 -0.21651
3 0.83333 0.08333 0.23838 0.00100 0.18630 -0.57670 0.06470 -0.11207
0 0.91667 0.08333 0.24936 0.00100 0.19351 -0.61071 0.11207 -0.06470
4 0.87500 0.00000 0.19898 0.00100 0.23912 -0.60440 0.00000 0.00000
SURF 0x14
mat 0
refs 26
23 0.91667 0.91667 0.21882 0.99900 0.15617 0.45920 0.11207 -0.06470
24 0.87500 1.00000 0.16417 0.99900 0.20895 0.45830 0.00000 0.00000
23 0.91667 0.91667 0.21882 0.99900 0.15617 0.45920 0.11207 -0.06470
25 0.83333 0.91667 0.21053 0.99900 0.15290 0.42768 0.06470 -0.11207
154 0.91667 0.83333 0.27563 0.99900 0.10447 0.41577 0.21651 -0.12500
156 0.83333 0.83333 0.25271 0.99900 0.10497 0.36222 0.12500 -0.21651
143 0.91667 0.75000 0.32918 0.99900 0.05945 0.32703 0.30619 -0.17678
145 0.83333 0.75000 0.28799 0.99900 0.06767 0.26941 0.17678 -0.30619
132 0.91667 0.66667 0.37332 0.99232 0.02664 0.19879 0.37500 -0.21651
134 0.83333 0.66667 0.31457 0.93678 0.04237 0.15738 0.21651 -0.37500
121 0.91667 0.58333 0.40266 0.68601 0.01006 0.04379 0.41826 -0.24148
123 0.83333 0.58333 0.33150 0.67193 0.02955 0.03395 0.24148 -0.41826
110 0.91667 0.50000 0.41387 0.35730 0.01120 -0.12091 0.43301 -0.25000
112 0.83333 0.50000 0.33844 0.39249 0.02914 -0.09363 0.25000 -0.43301
99 0.91667 0.41667 0.40641 0.03864 0.02889 -0.27785 0.41826 -0.24148
101 0.83333 0.41667 0.33549 0.11627 0.04068 -0.21875 0.24148 -0.41826
88 0.91667 0.33333 0.38226 0.00100 0.06003 -0.41261 0.37500 -0.21651
90 0.83333 0.33333 0.32310 0.00100 0.06342 -0.33527 0.21651 -0.37500
77 0.91667 0.25000 0.34511 0.00100 0.10054 -0.51553 0.30619 -0.17678
79 0.83333 0.25000 0.30202 0.00100 0.09629 -0.43738 0.17678 -0.30619
66 0.91667 0.16667 0.29935 0.00100 0.14628 -0.58181 0.21651 -0.12500
68 0.83333 0.16667 0.27332 0.00100 0.13788 -0.51956 0.12500 -0.21651
66 0.91667 0.16667 0.29935 0.00100 0.14628 -0.58181 0.21651 -0.12500
0 0.91667 0.08333 0.24936 0.00100 0.19351 -0.61071 0.11207 -0.06470
2 1.00000 0.08333 0.24596 0.00100 0.21392 -0.64381 0.12941 0.00000
1 0.95833 0.00000 0.19898 0.00100 0.23912 -0.60440 0.00000 0.00000
SURF 0x14
mat 0
refs 23
66 0.91667 0.16667 0.29935 0.00100 0.14628 -0.58181 0.21651 -0.12500
2 1.00000 0.08333 0.24596 0.00100 0.21392 -0.64381 0.12941 0.00000
66 0.91667 0.16667 0.29935 0.00100 0.14628 -0.58181 0.21651 -0.12500
67 1.00000 0.16667 0.29617 0.00100 0.18165 -0.65455 0.25000 0.00000
77 0.91667 0.25000 0.34511 0.00100 0.10054 -0.51553 0.30619 -0.17678
78 1.00000 0.25000 0.34675 0.00100 0.14154 -0.62617 0.35355 0.00000
88 0.91667 0.33333 0.38226 0.00100 0.06003 -0.41261 0.37500 -0.21651
89 1.00000 0.33333 0.39286 0.00100 0.09463 -0.54477 0.43301 0.00000
99 0.91667 0.41667 0.40641 0.03864 0.02889 -0.27785 0.41826 -0.24148
100 1.00000 0.41667 0.42672 0.00100 0.04684 -0.39635 0.48296 0.00000
110 0.91667 0.50000 0.41387 0.35730 0.01120 -0.12091 0.43301 -0.25000
111 1.00000 0.50000 0.43819 0.27990 0.01216 -0.18101 0.50000 0.00000
121 0.91667 0.58333 0.40266 0.68601 0.01006 0.04379 0.41826 -0.24148
122 1.00000 0.58333 0.42036 0.71453 0.00746 0.06528 0.48296 0.00000
132 0.91667 0.66667 0.37332 0.99232 0.02664 0.19879 0.37500 -0.21651
133 1.00000 0.66667 0.37732 0.99900 0.03584 0.27934 0.43301 0.00000
143 0.91667 0.75000 0.32918 0.99900 0.05945 0.32703 0.30619 -0.17678
144 1.00000 0.75000 0.32156 0.99900 0.08264 0.41936 0.35355 0.00000
154 0.91667 0.83333 0.27563 0.99900 0.10447 0.41577 0.21651 -0.12500
155 1.00000 0.83333 0.26409 0.99900 0.13155 0.48413 0.25000 0.00000
23 0.91667 0.91667 0.21882 0.99900 0.15617 0.45920 0.11207 -0.06470
21 1.00000 0.91667 0.21082 0.99900 0.17434 0.49121 0.12941 0.00000
22 0.95833 1.00000 0.16417 0.99900 0.20895 0.45830 0.00000 0.00000
kids 0

View File

@ -32,7 +32,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="textures/editor_defaults/default_texture.png" />
<texture name="Texture1" value="assets/default_texture.png" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -89,7 +89,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="skybox/default_skybox2.jpg" />
<texture name="Texture1" value="assets/skybox/default_skybox2.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -128,7 +128,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="skybox/default_skybox1.jpg" />
<texture name="Texture1" value="assets/skybox/default_skybox1.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -167,7 +167,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="skybox/default_skybox0.jpg" />
<texture name="Texture1" value="assets/skybox/default_skybox0.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -206,7 +206,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="skybox/default_skybox3.jpg" />
<texture name="Texture1" value="assets/skybox/default_skybox3.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -245,7 +245,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="skybox/default_skyboxup.jpg" />
<texture name="Texture1" value="assets/skybox/default_skyboxup.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -284,7 +284,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="skybox/default_skyboxdn.jpg" />
<texture name="Texture1" value="assets/skybox/default_skyboxdn.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -329,7 +329,7 @@
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<string name="Mesh" value="dwarf.x" />
<string name="Mesh" value="assets/dwarf.x" />
<bool name="Looping" value="true" />
<bool name="ReadOnlyMaterials" value="false" />
<float name="FramesPerSecond" value="0.250000" />
@ -345,7 +345,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -384,7 +384,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -468,7 +468,7 @@
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<string name="Mesh" value="dwarf.x" />
<string name="Mesh" value="assets/dwarf.x" />
<bool name="Looping" value="true" />
<bool name="ReadOnlyMaterials" value="false" />
<float name="FramesPerSecond" value="0.250000" />
@ -484,7 +484,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -523,7 +523,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -620,7 +620,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="textures/editor_defaults/default_texture.png" />
<texture name="Texture1" value="assets/default_texture.png" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -678,7 +678,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="textures/editor_defaults/default_texture.png" />
<texture name="Texture1" value="assets/default_texture.png" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -723,7 +723,7 @@
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<string name="Mesh" value="dwarf.x" />
<string name="Mesh" value="assets/dwarf.x" />
<bool name="Looping" value="true" />
<bool name="ReadOnlyMaterials" value="false" />
<float name="FramesPerSecond" value="0.250000" />
@ -739,7 +739,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -778,7 +778,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -875,7 +875,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="textures/editor_defaults/default_texture.png" />
<texture name="Texture1" value="assets/default_texture.png" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -920,7 +920,7 @@
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<string name="Mesh" value="dwarf.x" />
<string name="Mesh" value="assets/dwarf.x" />
<bool name="Looping" value="true" />
<bool name="ReadOnlyMaterials" value="false" />
<float name="FramesPerSecond" value="0.250000" />
@ -936,7 +936,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -975,7 +975,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />

View File

@ -33,8 +33,8 @@
<float name="Shininess" value="0.750000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="brownground_1-1.jpg" />
<texture name="Texture2" value="1.png" />
<texture name="Texture1" value="assets/brownground_1-1.jpg" />
<texture name="Texture2" value="assets/1.png" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
<bool name="Wireframe" value="false" />
@ -72,8 +72,8 @@
<float name="Shininess" value="0.750000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="crackedground_1-6.jpg" />
<texture name="Texture2" value="1.png" />
<texture name="Texture1" value="assets/crackedground_1-6.jpg" />
<texture name="Texture2" value="assets/1.png" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
<bool name="Wireframe" value="false" />
@ -117,7 +117,7 @@
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<string name="Mesh" value="dwarf.x" />
<string name="Mesh" value="assets/dwarf.x" />
<bool name="ReadOnlyMaterials" value="false" />
</attributes>
@ -131,7 +131,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -170,7 +170,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -254,7 +254,7 @@
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<string name="Mesh" value="dwarf.x" />
<string name="Mesh" value="assets/dwarf.x" />
<bool name="ReadOnlyMaterials" value="false" />
</attributes>
@ -268,7 +268,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -307,7 +307,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -391,7 +391,7 @@
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<string name="Mesh" value="dwarf.x" />
<string name="Mesh" value="assets/dwarf.x" />
<bool name="ReadOnlyMaterials" value="false" />
</attributes>
@ -405,7 +405,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -444,7 +444,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -528,7 +528,7 @@
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<string name="Mesh" value="dwarf.x" />
<string name="Mesh" value="assets/dwarf.x" />
<bool name="ReadOnlyMaterials" value="false" />
</attributes>
@ -542,7 +542,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -581,7 +581,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -665,7 +665,7 @@
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<string name="Mesh" value="dwarf.x" />
<string name="Mesh" value="assets/dwarf.x" />
<bool name="ReadOnlyMaterials" value="false" />
</attributes>
@ -679,7 +679,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -718,7 +718,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />

View File

@ -19,7 +19,7 @@
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<string name="Mesh" value="dwarf.x" />
<string name="Mesh" value="assets/dwarf.x" />
<bool name="Looping" value="true" />
<bool name="ReadOnlyMaterials" value="false" />
<float name="FramesPerSecond" value="0.025000" />
@ -35,7 +35,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -73,7 +73,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />

Binary file not shown.

View File

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB

View File

Before

Width:  |  Height:  |  Size: 64 KiB

After

Width:  |  Height:  |  Size: 64 KiB

View File

Before

Width:  |  Height:  |  Size: 65 KiB

After

Width:  |  Height:  |  Size: 65 KiB

View File

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 258 KiB

View File

Before

Width:  |  Height:  |  Size: 199 KiB

After

Width:  |  Height:  |  Size: 199 KiB

View File

Before

Width:  |  Height:  |  Size: 82 KiB

After

Width:  |  Height:  |  Size: 82 KiB

View File

Before

Width:  |  Height:  |  Size: 412 KiB

After

Width:  |  Height:  |  Size: 412 KiB

View File

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

View File

@ -0,0 +1,11 @@
This skybox is basing on a skydome texture from
http://mikepan.homeip.net/earth
Downloaded November 22th, 08
Distribution note:
"These royalty-free skydome textures work best when applied to a sphere or hemisphere"
Thanks for your great work!

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

View File

Before

Width:  |  Height:  |  Size: 9.1 KiB

After

Width:  |  Height:  |  Size: 9.1 KiB

View File

Before

Width:  |  Height:  |  Size: 7.7 KiB

After

Width:  |  Height:  |  Size: 7.7 KiB

View File

@ -32,7 +32,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="default.png" />
<texture name="Texture1" value="assets/default.png" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />

Binary file not shown.

View File

@ -13,8 +13,8 @@
<float name="Shininess" value="0.750000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="brownground_1-1.jpg" />
<texture name="Texture2" value="1.png" />
<texture name="Texture1" value="assets/brownground_1-1.jpg" />
<texture name="Texture2" value="assets/1.png" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
<bool name="Wireframe" value="false" />
@ -870,8 +870,8 @@
<float name="Shininess" value="0.750000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="crackedground_1-6.jpg" />
<texture name="Texture2" value="1.png" />
<texture name="Texture1" value="assets/crackedground_1-6.jpg" />
<texture name="Texture2" value="assets/1.png" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
<bool name="Wireframe" value="false" />

View File

@ -33,8 +33,8 @@
<float name="Shininess" value="0.750000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="brownground_1-1.jpg" />
<texture name="Texture2" value="1.png" />
<texture name="Texture1" value="assets/brownground_1-1.jpg" />
<texture name="Texture2" value="assets/1.png" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
<bool name="Wireframe" value="false" />
@ -71,8 +71,8 @@
<float name="Shininess" value="0.750000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="crackedground_1-6.jpg" />
<texture name="Texture2" value="1.png" />
<texture name="Texture1" value="assets/crackedground_1-6.jpg" />
<texture name="Texture2" value="assets/1.png" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
<bool name="Wireframe" value="false" />
@ -113,7 +113,7 @@
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<string name="Mesh" value="dwarf.x" />
<string name="Mesh" value="assets/dwarf.x" />
<bool name="ReadOnlyMaterials" value="false" />
</attributes>
@ -127,7 +127,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -165,7 +165,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />

View File

@ -33,8 +33,8 @@
<float name="Shininess" value="0.750000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="brownground_1-1.jpg" />
<texture name="Texture2" value="1.png" />
<texture name="Texture1" value="assets/brownground_1-1.jpg" />
<texture name="Texture2" value="assets/1.png" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
<bool name="Wireframe" value="false" />
@ -71,8 +71,8 @@
<float name="Shininess" value="0.750000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="crackedground_1-6.jpg" />
<texture name="Texture2" value="1.png" />
<texture name="Texture1" value="assets/crackedground_1-6.jpg" />
<texture name="Texture2" value="assets/1.png" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
<bool name="Wireframe" value="false" />
@ -115,7 +115,7 @@
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<string name="Mesh" value="dwarf.x" />
<string name="Mesh" value="assets/dwarf.x" />
<bool name="ReadOnlyMaterials" value="false" />
</attributes>
@ -129,7 +129,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -167,7 +167,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />

View File

@ -33,7 +33,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -71,7 +71,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -153,7 +153,7 @@
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<string name="Mesh" value="dwarf.x" />
<string name="Mesh" value="assets/dwarf.x" />
<bool name="ReadOnlyMaterials" value="false" />
</attributes>
@ -167,7 +167,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -205,7 +205,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -287,7 +287,7 @@
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<string name="Mesh" value="dwarf.x" />
<string name="Mesh" value="assets/dwarf.x" />
<bool name="ReadOnlyMaterials" value="false" />
</attributes>
@ -301,7 +301,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -339,7 +339,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -421,7 +421,7 @@
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<string name="Mesh" value="dwarf.x" />
<string name="Mesh" value="assets/dwarf.x" />
<bool name="ReadOnlyMaterials" value="false" />
</attributes>
@ -435,7 +435,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -473,7 +473,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -555,7 +555,7 @@
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<string name="Mesh" value="dwarf.x" />
<string name="Mesh" value="assets/dwarf.x" />
<bool name="ReadOnlyMaterials" value="false" />
</attributes>
@ -569,7 +569,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -607,7 +607,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -689,7 +689,7 @@
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<string name="Mesh" value="dwarf.x" />
<string name="Mesh" value="assets/dwarf.x" />
<bool name="ReadOnlyMaterials" value="false" />
</attributes>
@ -703,7 +703,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -741,7 +741,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />

View File

@ -126,7 +126,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="UVTransformTestImg.png" />
<texture name="Texture1" value="assets/UVTransformTestImg.png" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -197,7 +197,7 @@
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<string name="Mesh" value="dwarf.x" />
<string name="Mesh" value="assets/dwarf.x" />
<bool name="Looping" value="true" />
<bool name="ReadOnlyMaterials" value="false" />
<float name="FramesPerSecond" value="0.025000" />
@ -213,7 +213,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -251,7 +251,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -347,8 +347,8 @@
<float name="Shininess" value="0.750000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="brownground_1-1.jpg" />
<texture name="Texture2" value="1.png" />
<texture name="Texture1" value="assets/brownground_1-1.jpg" />
<texture name="Texture2" value="assets/1.png" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
<bool name="Wireframe" value="false" />
@ -385,8 +385,8 @@
<float name="Shininess" value="0.750000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="crackedground_1-6.jpg" />
<texture name="Texture2" value="1.png" />
<texture name="Texture1" value="assets/crackedground_1-6.jpg" />
<texture name="Texture2" value="assets/1.png" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
<bool name="Wireframe" value="false" />
@ -442,7 +442,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="UVTransformTestImg.png" />
<texture name="Texture1" value="assets/UVTransformTestImg.png" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -512,7 +512,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="UVTransformTestImg.png" />
<texture name="Texture1" value="assets/UVTransformTestImg.png" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />

View File

@ -126,7 +126,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="UVTransformTestImg.png" />
<texture name="Texture1" value="assets/UVTransformTestImg.png" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -197,7 +197,7 @@
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<string name="Mesh" value="dwarf.x" />
<string name="Mesh" value="assets/dwarf.x" />
<bool name="Looping" value="true" />
<bool name="ReadOnlyMaterials" value="false" />
<float name="FramesPerSecond" value="0.025000" />
@ -213,7 +213,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="axe.jpg" />
<texture name="Texture1" value="assets/axe.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -251,7 +251,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="dwarf.jpg" />
<texture name="Texture1" value="assets/dwarf.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -347,8 +347,8 @@
<float name="Shininess" value="0.750000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="brownground_1-1.jpg" />
<texture name="Texture2" value="1.png" />
<texture name="Texture1" value="assets/brownground_1-1.jpg" />
<texture name="Texture2" value="assets/1.png" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
<bool name="Wireframe" value="false" />
@ -385,8 +385,8 @@
<float name="Shininess" value="0.750000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="crackedground_1-6.jpg" />
<texture name="Texture2" value="1.png" />
<texture name="Texture1" value="assets/crackedground_1-6.jpg" />
<texture name="Texture2" value="assets/1.png" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
<bool name="Wireframe" value="false" />
@ -442,7 +442,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="UVTransformTestImg.png" />
<texture name="Texture1" value="assets/UVTransformTestImg.png" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -512,7 +512,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="UVTransformTestImg.png" />
<texture name="Texture1" value="assets/UVTransformTestImg.png" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />

View File

@ -34,7 +34,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="earthSpherical.jpg" />
<texture name="Texture1" value="assets/earthSpherical.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />

Binary file not shown.

View File

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 103 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 128 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

View File

Before

Width:  |  Height:  |  Size: 65 KiB

After

Width:  |  Height:  |  Size: 65 KiB

View File

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 40 KiB

View File

Before

Width:  |  Height:  |  Size: 199 KiB

After

Width:  |  Height:  |  Size: 199 KiB

View File

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

View File

Before

Width:  |  Height:  |  Size: 9.1 KiB

After

Width:  |  Height:  |  Size: 9.1 KiB

View File

Before

Width:  |  Height:  |  Size: 7.7 KiB

After

Width:  |  Height:  |  Size: 7.7 KiB

View File

@ -13,8 +13,8 @@
<float name="Shininess" value="0.750000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="brownground_1-1.jpg" />
<texture name="Texture2" value="1.png" />
<texture name="Texture1" value="assets/brownground_1-1.jpg" />
<texture name="Texture2" value="assets/1.png" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
<bool name="Wireframe" value="false" />
@ -870,8 +870,8 @@
<float name="Shininess" value="0.750000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="crackedground_1-6.jpg" />
<texture name="Texture2" value="1.png" />
<texture name="Texture1" value="assets/crackedground_1-6.jpg" />
<texture name="Texture2" value="assets/1.png" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
<bool name="Wireframe" value="false" />

View File

@ -13,7 +13,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="wal67ar_small.jpg" />
<texture name="Texture1" value="assets/wal67ar_small.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -354,7 +354,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="SpiderTex.jpg" />
<texture name="Texture1" value="assets/SpiderTex.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -485,7 +485,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="drkwood2.jpg" />
<texture name="Texture1" value="assets/drkwood2.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -1609,7 +1609,7 @@
<float name="Shininess" value="0.000000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="engineflare1.jpg" />
<texture name="Texture1" value="assets/engineflare1.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />

View File

@ -13,7 +13,7 @@
<float name="Shininess" value="0.100000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="" />
<texture name="Texture1" value="assets/UVTransformTestImg.png" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -96,7 +96,7 @@
<float name="Shininess" value="0.100000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="" />
<texture name="Texture1" value="assets/UVTransform_OffsetUV0.5-mirrorUV.png" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -179,7 +179,7 @@
<float name="Shininess" value="0.100000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="" />
<texture name="Texture1" value="assets/UVTransform_ScaleUV1-2_OffsetUV0-0.9_Rotate-72.png" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -262,7 +262,7 @@
<float name="Shininess" value="0.100000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="" />
<texture name="Texture1" value="assets/UVTransform_ScaleUV1-2_OffsetUV0-0.9_Rotate-72_mirrorU.png" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
@ -345,7 +345,7 @@
<float name="Shininess" value="0.100000" />
<float name="Param1" value="0.170000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="" />
<texture name="Texture1" value="assets/UVTransform_ScaleUV2x_Rotate45.png" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />

View File

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN" "http://www.web3d.org/specifications/x3d-3.0.dtd">
<X3D profile='Interchange' version='3.0' xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='http://www.web3d.org/specifications/x3d-3.0.xsd'>
<head>
</head>
<Scene>
<WorldInfo title='vertices.x3d'/>
<NavigationInfo type='"EXAMINE" "WALK" "FLY" "ANY"'/>
<Viewpoint description='vertices' position='0 0 10'/>
<Shape>
<Appearance>
<Material emissiveColor='1 0 0'/>
</Appearance>
<IndexedLineSet coordIndex='0 1 2 3 0 -1'>
<Coordinate point='1 0 0 1 1 0 0 1 0 0 0 0'/>
</IndexedLineSet>
</Shape>
</Scene>
</X3D>

View File

@ -0,0 +1,70 @@
/*
---------------------------------------------------------------------------
Open Asset Import Library (assimp)
---------------------------------------------------------------------------
Copyright (c) 2006-2020, assimp team
All rights reserved.
Redistribution and use of this software in source and binary forms,
with or without modification, are permitted provided that the following
conditions are met:
* Redistributions of source code must retain the above
copyright notice, this list of conditions and the
following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the
following disclaimer in the documentation and/or other
materials provided with the distribution.
* Neither the name of the assimp team, nor the names of its
contributors may be used to endorse or promote products
derived from this software without specific prior
written permission of the assimp team.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
---------------------------------------------------------------------------
*/
#include "AbstractImportExportBase.h"
#include "UnitTestPCH.h"
#include <assimp/postprocess.h>
#include <assimp/scene.h>
#include <assimp/Importer.hpp>
#include <assimp/Exporter.hpp>
using namespace Assimp;
class utPbrtImportExport : public AbstractImportExportBase {
public:
#ifndef ASSIMP_BUILD_NO_EXPORT
bool exporterTest() override {
Assimp::Importer importer;
const aiScene *scene = importer.ReadFile(ASSIMP_TEST_MODELS_DIR "/OBJ/spider.obj", aiProcess_ValidateDataStructure);
EXPECT_NE(scene, nullptr );
::Assimp::Exporter exporter;
return AI_SUCCESS == exporter.Export(scene, "pbrt", ASSIMP_TEST_MODELS_DIR "/OBJ/spider_out.pbrt");
}
#endif
};
#ifndef ASSIMP_BUILD_NO_EXPORT
TEST_F(utPbrtImportExport, exportTest_Success) {
EXPECT_TRUE(exporterTest());
}
#endif // ASSIMP_BUILD_NO_EXPORT

View File

@ -99,6 +99,12 @@ TEST(utACImportExport, importSphereWithLight) {
ASSERT_NE(nullptr, scene);
}
TEST(utACImportExport, importSphereWithLightACC) {
Assimp::Importer importer;
const aiScene *scene = importer.ReadFile(ASSIMP_TEST_MODELS_DIR "/AC/SphereWithLight.acc", aiProcess_ValidateDataStructure);
ASSERT_NE(nullptr, scene);
}
TEST(utACImportExport, importSphereWithLightUTF16) {
Assimp::Importer importer;
const aiScene *scene = importer.ReadFile(ASSIMP_TEST_MODELS_DIR "/AC/SphereWithLight_UTF16LE.ac", aiProcess_ValidateDataStructure);

View File

@ -44,6 +44,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <assimp/postprocess.h>
#include <assimp/Importer.hpp>
#include <assimp/scene.h>
using namespace Assimp;
@ -59,3 +60,16 @@ public:
TEST_F(utX3DImportExport, importX3DFromFileTest) {
EXPECT_TRUE(importerTest());
}
TEST_F(utX3DImportExport, importX3DIndexedLineSet) {
Assimp::Importer importer;
const aiScene *scene = importer.ReadFile(ASSIMP_TEST_MODELS_DIR "/X3D/IndexedLineSet.x3d", aiProcess_ValidateDataStructure);
ASSERT_NE(nullptr, scene);
ASSERT_EQ(scene->mNumMeshes, 1u);
ASSERT_EQ(scene->mMeshes[0]->mNumFaces, 4u);
ASSERT_EQ(scene->mMeshes[0]->mPrimitiveTypes, aiPrimitiveType_LINE);
ASSERT_EQ(scene->mMeshes[0]->mNumVertices, 4u);
for (unsigned int i = 0; i < scene->mMeshes[0]->mNumFaces; i++) {
ASSERT_EQ(scene->mMeshes[0]->mFaces[i].mNumIndices, 2u);
}
}