From 7a9387269e3b123b1647cf59c78cc6c998a9a330 Mon Sep 17 00:00:00 2001 From: Treeki Date: Tue, 3 Jun 2014 05:55:54 +0200 Subject: experimental 3DS support --- lyt/materials/material.cpp | 10 ++++++---- lyt/materials/material.h | 6 +++--- 2 files changed, 9 insertions(+), 7 deletions(-) (limited to 'lyt/materials') diff --git a/lyt/materials/material.cpp b/lyt/materials/material.cpp index a775553..877338d 100644 --- a/lyt/materials/material.cpp +++ b/lyt/materials/material.cpp @@ -94,7 +94,7 @@ void LYTMaterial::writeToDataStream(QDataStream &out) const { WriteFixedLengthASCII(out, name, 0x14); for (int i = 0; i < 3; i++) - WriteS10Color(this->colours[i], out); + WriteRGBA8Color(this->colours[i], out); for (int i = 0; i < 4; i++) WriteRGBA8Color(this->tevKColour[i], out); @@ -176,7 +176,7 @@ void LYTMaterial::readFromDataStream(QDataStream &in) { name = ReadFixedLengthASCII(in, 0x14); for (int i = 0; i < 3; i++) - ReadS10Color(this->colours[i], in); + ReadRGBA8Color(this->colours[i], in); for (int i = 0; i < 4; i++) ReadRGBA8Color(this->tevKColour[i], in); @@ -186,6 +186,8 @@ void LYTMaterial::readFromDataStream(QDataStream &in) { in >> (quint32&)resNumValue; LYTMaterialResourceNum resourceNum(resNumValue); + qDebug() << "[[ resNum : " << resNumValue << "]]"; + // this is really complicated -_- // first off: TexMap texMaps.clear(); @@ -208,7 +210,7 @@ void LYTMaterial::readFromDataStream(QDataStream &in) { this->readTexCoordGen(in); } - // ChanCtrl + /*// ChanCtrl if (resourceNum.hasChanCtrl()) { this->hasChanCtrl = true; this->chanCtrl.readFromDataStream(in); @@ -267,7 +269,7 @@ void LYTMaterial::readFromDataStream(QDataStream &in) { this->blendMode.readFromDataStream(in); } else { this->hasBlendMode = false; - } + }*/ } diff --git a/lyt/materials/material.h b/lyt/materials/material.h index a42a9d8..025b304 100644 --- a/lyt/materials/material.h +++ b/lyt/materials/material.h @@ -45,9 +45,9 @@ public: quint32 value() const { return m_value; } - int getTexMapNum() const { return BitExtract(m_value, 4, 28); } - int getTexSRTNum() const { return BitExtract(m_value, 4, 24); } - int getTexCoordGenNum() const { return BitExtract(m_value, 4, 20); } + int getTexMapNum() const { return BitExtract(m_value, 2, 30); } + int getTexSRTNum() const { return BitExtract(m_value, 2, 28); } + int getTexCoordGenNum() const { return BitExtract(m_value, 2, 26); } bool hasChanCtrl() const { return BitExtract(m_value, 1, 6); } bool hasMatCol() const { return BitExtract(m_value, 1, 4); } bool hasTevSwapTable() const { return BitExtract(m_value, 1, 19); } -- cgit v1.2.3