mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-03-29 22:20:48 +00:00
rsx: Relax inheritance checks a bit
- It is not a fatal error for a texture to be defined where a framebuffer once existed.
This commit is contained in:
parent
5a049d41fd
commit
bec91aab7b
@ -682,10 +682,7 @@ namespace gl
|
|||||||
{
|
{
|
||||||
// Try and reuse this image data. It is very likely to match our needs
|
// Try and reuse this image data. It is very likely to match our needs
|
||||||
image = dynamic_cast<gl::viewable_image*>(cached.get_raw_texture());
|
image = dynamic_cast<gl::viewable_image*>(cached.get_raw_texture());
|
||||||
ensure(image);
|
if (!image || cached.get_image_type() != type)
|
||||||
ensure(cached.is_managed());
|
|
||||||
|
|
||||||
if (cached.get_image_type() != type)
|
|
||||||
{
|
{
|
||||||
// Type mismatch, discard
|
// Type mismatch, discard
|
||||||
cached.destroy();
|
cached.destroy();
|
||||||
@ -693,6 +690,8 @@ namespace gl
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
ensure(cached.is_managed());
|
||||||
|
|
||||||
cached.set_dimensions(width, height, depth, pitch);
|
cached.set_dimensions(width, height, depth, pitch);
|
||||||
cached.set_format(texture::format::rgba, texture::type::ubyte, true);
|
cached.set_format(texture::format::rgba, texture::type::ubyte, true);
|
||||||
|
|
||||||
|
@ -815,10 +815,7 @@ namespace vk
|
|||||||
if (region.exists())
|
if (region.exists())
|
||||||
{
|
{
|
||||||
image = dynamic_cast<vk::viewable_image*>(region.get_raw_texture());
|
image = dynamic_cast<vk::viewable_image*>(region.get_raw_texture());
|
||||||
ensure(image);
|
if (!image || region.get_image_type() != type || image->depth() != depth) // TODO
|
||||||
ensure(region.is_managed());
|
|
||||||
|
|
||||||
if (region.get_image_type() != type || image->depth() != depth) // TODO
|
|
||||||
{
|
{
|
||||||
// Incompatible view/type
|
// Incompatible view/type
|
||||||
region.destroy();
|
region.destroy();
|
||||||
@ -826,6 +823,8 @@ namespace vk
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
ensure(region.is_managed());
|
||||||
|
|
||||||
// Reuse
|
// Reuse
|
||||||
region.set_rsx_pitch(pitch);
|
region.set_rsx_pitch(pitch);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user