
(Acid Bottle with corrected uv-map)
This is the uvmap for acid bath as of the extracted .smd file:
After correction:
Still some manual work to do but still very nice, thank you so much again
For the noesis texture scripts:
Do I have to use this script for regular textures?
Code: Select all
from inc_noesis import *
def registerNoesisTypes():
handle = noesis.register("whatever", ".wms")
noesis.setHandlerTypeCheck(handle, noepyCheckType)
noesis.setHandlerLoadRGBA(handle, noepyLoadRGBA)
#noesis.logPopup();
return 1
def noepyCheckType(data):
bs = NoeBitStream(data)
if bs.readBytes(2) != b'\x05\x80':
print("wrong sig!")
return 0
return 1
def noepyLoadRGBA(data, texList):
bs = NoeBitStream(data)
dataOffset = 40
bs.seek(0x10)
imgWidth = bs.readUInt()
imgHeight = bs.readUInt()
bs.seek(0x24)
imgform = bs.readUInt()
bs.seek(dataOffset)
data = bs.readBytes(bs.getSize() - bs.tell())
if imgform == 0xc:
data = rapi.imageDecodeRaw(data, imgWidth, imgHeight, "b4 g4 r4 a4")
else:
data = rapi.imageDecodeRaw(data, imgWidth, imgHeight, "b5 g6 r5")
texList.append(NoeTexture(rapi.getInputName(), imgWidth, imgHeight, data, noesis.NOESISTEX_RGBA32))
return 1
And this one for half square textures with corrected alpha?
Code: Select all
from inc_noesis import *
def registerNoesisTypes():
handle = noesis.register("whatever", ".wms")
noesis.setHandlerTypeCheck(handle, noepyCheckType)
noesis.setHandlerLoadRGBA(handle, noepyLoadRGBA)
#noesis.logPopup();
return 1
def noepyCheckType(data):
bs = NoeBitStream(data)
if bs.readBytes(2) != b'\x05\x80':
print("wrong sig!")
return 0
return 1
def noepyLoadRGBA(data, texList):
bs = NoeBitStream(data)
dataOffset = 40
bs.seek(0x10)
imgWidth = bs.readUInt()
imgHeight = bs.readUInt()
bs.seek(0x24)
imgform = bs.readUInt()
bs.seek(dataOffset)
data = bs.readBytes(bs.getSize() - bs.tell())
if imgform == 0x8:
data = rapi.imageDecodeRaw(data, imgWidth, imgHeight, "r8 a8")
if imgform == 0xa:
data = rapi.imageDecodeRaw(data, imgWidth, imgHeight, "b5 g6 r5")
if imgform == 0xc:
data = rapi.imageDecodeRaw(data, imgWidth, imgHeight, "b4 g4 r4 a4")
if imgform == 0xd:
data = rapi.imageDecodeRaw(data, imgWidth, imgHeight, "g8 a8")
texList.append(NoeTexture(rapi.getInputName(), imgWidth, imgHeight, data, noesis.NOESISTEX_RGBA32))
return 1
I've also tried to recreate your hambone rip:
Download .blend file: https://cdn.discordapp.com/attachments/ ... -issue.zip
I had to flip all the uvs on the y-axe and they seem to be incorrect on some parts and single faces...i did a lazy job on putting them in place. I also converted the .smd to an .obj via noesis since blenders importer is a little restricted. Since the converted mesh came out as one object i seperated it by material....that also kinda kept a few supposedly individual meshes stuck together weirdly.