aboutsummaryrefslogtreecommitdiff
path: root/tools/common/FbxFileReader.h
blob: ca288adc3470a46bff3bf07c6160e1c207ef9645 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#pragma once
#include "IMeshFileReader.h"
#include "fbxsdk.h"

class FbxFileReader: public IMeshFileReader
{
public:
	FbxFileReader();
	~FbxFileReader() = default;

	/*
	Load from the specified file path, returning a mesh or nullptr if failed
	*/
	std::shared_ptr<Nv::Blast::Mesh> loadFromFile(std::string filename) override;

private:

	// Should we convert the scene to UE4 coordinate system on load?
	bool		bConvertToUE4;

	FbxAMatrix getTransformForNode(FbxNode* node);
	void getFbxMeshes(FbxNode* node, std::vector<FbxNode*>& meshNodes);
};