mirror of
https://github.com/overte-org/overte.git
synced 2025-04-07 09:33:08 +02:00
Add basic mip writing to gpu::Texture
This commit is contained in:
parent
00cbfa0f70
commit
1fec531c68
5 changed files with 13 additions and 4 deletions
|
@ -626,7 +626,7 @@ Application::Application(int& argc, char** argv, QElapsedTimer& startupTimer, bo
|
|||
proxy.setType(QNetworkProxy::HttpProxy);
|
||||
proxy.setHostName("127.0.0.1");
|
||||
proxy.setPort(8888);
|
||||
QNetworkProxy::setApplicationProxy(proxy);
|
||||
//QNetworkProxy::setApplicationProxy(proxy);
|
||||
|
||||
// make sure the debug draw singleton is initialized on the main thread.
|
||||
DebugDraw::getInstance().removeMarker("");
|
||||
|
|
|
@ -270,6 +270,7 @@ public:
|
|||
virtual void reset() = 0;
|
||||
virtual PixelsPointer getMipFace(uint16 level, uint8 face = 0) const = 0;
|
||||
virtual Size getMipFaceSize(uint16 level, uint8 face = 0) const = 0;
|
||||
virtual void assignMipData(uint16 level, const char* data, const size_t length) = 0;
|
||||
virtual void assignMipData(uint16 level, const storage::StoragePointer& storage) = 0;
|
||||
virtual void assignMipFaceData(uint16 level, uint8 face, const storage::StoragePointer& storage) = 0;
|
||||
virtual bool isMipAvailable(uint16 level, uint8 face = 0) const = 0;
|
||||
|
@ -296,6 +297,7 @@ public:
|
|||
void reset() override;
|
||||
PixelsPointer getMipFace(uint16 level, uint8 face = 0) const override;
|
||||
Size getMipFaceSize(uint16 level, uint8 face = 0) const override;
|
||||
void assignMipData(uint16 level, const char* data, const size_t length) override;
|
||||
void assignMipData(uint16 level, const storage::StoragePointer& storage) override;
|
||||
void assignMipFaceData(uint16 level, uint8 face, const storage::StoragePointer& storage) override;
|
||||
bool isMipAvailable(uint16 level, uint8 face = 0) const override;
|
||||
|
|
|
@ -141,8 +141,13 @@ namespace ktx {
|
|||
}
|
||||
currentDestPtr += destHeader->bytesOfKeyValueData;
|
||||
|
||||
for (int i = 0; i < descriptors.size(); ++i) {
|
||||
*currentDestPtr = descriptors[i]._imageSize;
|
||||
for (size_t i = 0; i < descriptors.size(); ++i) {
|
||||
auto ptr = reinterpret_cast<uint32_t*>(currentDestPtr);
|
||||
*ptr = descriptors[i]._imageSize;
|
||||
ptr++;
|
||||
for (size_t k = 0; k < descriptors[i]._imageSize/4; k++) {
|
||||
*(ptr + k) = 0xFFFF0000;
|
||||
}
|
||||
currentDestPtr += descriptors[i]._imageSize + sizeof(uint32_t);
|
||||
}
|
||||
|
||||
|
|
|
@ -393,7 +393,8 @@ void NetworkTexture::loadContent(const QByteArray& content) {
|
|||
auto numMipsToGet = glm::min(numMips, 6);
|
||||
auto sizeOfTopMips = 0;
|
||||
for (int i = 0; i < numMipsToGet; ++i) {
|
||||
auto& img = desc.images[i];
|
||||
auto mipLevel = numMips - 1 - i;
|
||||
auto& img = desc.images[mipLevel];
|
||||
sizeOfTopMips += img._imageSize;
|
||||
}
|
||||
_requestByteRange.fromInclusive = length - sizeOfTopMips;
|
||||
|
|
|
@ -665,6 +665,7 @@ void Resource::makeRequest() {
|
|||
}
|
||||
|
||||
PROFILE_ASYNC_BEGIN(resource, "Resource:" + getType(), QString::number(_requestID), { { "url", _url.toString() }, { "activeURL", _activeUrl.toString() } });
|
||||
qDebug() << "Making request to " << _url << " for byte range " << _requestByteRange.fromInclusive << "-" << _requestByteRange.toExclusive;
|
||||
|
||||
_request = ResourceManager::createResourceRequest(this, _activeUrl);
|
||||
|
||||
|
|
Loading…
Reference in a new issue