28 lines
812 B
GDScript
28 lines
812 B
GDScript
class_name B3D
|
|
|
|
static func ReadChunk(reader:BufferStuffReader):
|
|
var chunk = B3DChunk.new()
|
|
chunk.name = reader.readBuffer(4).get_string_from_ascii()
|
|
var chunkSize = reader.readInt()
|
|
chunk.bytes = reader.readBuffer(chunkSize)
|
|
|
|
return chunk;
|
|
|
|
static func Load(filePath: String):
|
|
var correctedPath = filePath.replace("\\", "/")
|
|
|
|
var fileHandle = FileAccess.open(str("res://", correctedPath), FileAccess.READ)
|
|
var reader = BufferStuffReader.create(fileHandle.get_buffer(fileHandle.get_length()))
|
|
fileHandle.close()
|
|
|
|
var bb3dChunk = ReadChunk(reader)
|
|
print(bb3dChunk.name)
|
|
if bb3dChunk.name == "BB3D":
|
|
var bb3dReader = BufferStuffReader.create(bb3dChunk.bytes)
|
|
var version = bb3dReader.readInt()
|
|
|
|
if version == 1:
|
|
pass
|
|
else:
|
|
print(str("Unknown b3d version. ", version))
|
|
return null
|