| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- //********************************** Banshee Engine (www.banshee3d.com) **************************************************//
- //**************** Copyright (c) 2016 Marko Pintera ([email protected]). All rights reserved. **********************//
- #include "Importer/BsShaderIncludeImporter.h"
- #include "Material/BsShaderInclude.h"
- #include "FileSystem/BsDataStream.h"
- #include "FileSystem/BsFileSystem.h"
- namespace bs
- {
- ShaderIncludeImporter::ShaderIncludeImporter()
- :SpecificImporter()
- {
- }
- ShaderIncludeImporter::~ShaderIncludeImporter()
- {
- }
- bool ShaderIncludeImporter::isExtensionSupported(const WString& ext) const
- {
- WString lowerCaseExt = ext;
- StringUtil::toLowerCase(lowerCaseExt);
- return lowerCaseExt == L"bslinc";
- }
- bool ShaderIncludeImporter::isMagicNumberSupported(const UINT8* magicNumPtr, UINT32 numBytes) const
- {
- return true; // Plain-text so I don't even check for magic number
- }
- SPtr<Resource> ShaderIncludeImporter::import(const Path& filePath, SPtr<const ImportOptions> importOptions)
- {
- SPtr<DataStream> stream = FileSystem::openFile(filePath);
- String includeString = stream->getAsString();
- SPtr<ShaderInclude> gpuInclude = ShaderInclude::_createPtr(includeString);
- WString fileName = filePath.getWFilename(false);
- gpuInclude->setName(fileName);
- return gpuInclude;
- }
- }
|