找到使用了Cubemap的模型,再Output里会显示该模型使用的所有贴图 ,选中Cubemap导出
选择导出格式为HDR
导出的Cubemap是竖着的,需要再PS里逆时针旋转90度
还有,导出的的Cubemap方向是错的,需要把3,4 跟1,2 对换,6旋转180度
UE 文档里的方向参考
最后使用 DDS导出工具 ,导出成Cubemap贴图
也可以使用Python来做方向调整 (暂时还没写HDR的格式)
from PIL import Image
# 打开图片文件
img = Image.open(r"D:\a.png")
outImg = r"D:\c.jpg"
# 顺时针旋转90度
img = img.rotate(90, expand=True)
# 获取图片宽度和高度
width, height = img.size
# 计算每份的宽度
piece_width = width // 6
# 拆分图片并交换位置
pieces = []
pieces.append(img.crop((2 * piece_width, 0, 3 * piece_width, height))) # 3
pieces.append(img.crop((3 * piece_width, 0, 4 * piece_width, height))) # 4
pieces.append(img.crop((0, 0, piece_width, height))) # 1
pieces.append(img.crop((piece_width, 0, 2 * piece_width, height))) # 2
pieces.append(img.crop((4 * piece_width, 0, 5 * piece_width, height))) # 5
pieces.append(img.crop((5 * piece_width, 0, 6 * piece_width, height))) # 6
# 将拆分后的第6份旋转180度
pieces[-1] = pieces[-1].rotate(180)
# 拼接图片
new_img = Image.new("RGB", (width, height))
x_offset = 0
for piece in pieces:
new_img.paste(piece, (x_offset, 0))
x_offset += piece_width
# 保存拼接后的图片
new_img.save("new_image.jpg")
# 保存拼接后的图片
new_img.save(outImg)