Cubemap.SetPixels 设置像素颜色列表

function SetPixels (colors : Color[], face : CubemapFace, miplevel : int = 0) : void

Description描述

Sets pixel colors of a cubemap face.

设置一个Cubemap面的像素颜色。

This function takes a color array and changes the pixel colors of the whole cubemap face. Call Apply to actually upload the changed pixels to the graphics card.
这个函数取回并改变整个立方贴图面的像素颜色数组。调用Apply来实际上载改变后的像素到显卡.

The colors array is a flattened 2D array, where pixels are laid out left to right, top to bottom (i.e. row after row). Array size must be at least width by height of the mip level used. The default mip level is zero (the base texture) in which case the size is just the size of the texture. In general case, mip level size is mipSize=max(1,width>>miplevel).

colors数组是一个2D数组,其中的像素被从左到右,从上到下放置(一排又一排)。数组的大小必须至少是所使用的mip等级的宽乘高。默认的mip等级是零(基本纹理)在这种情况下大小仅只是纹理的大小。一般地,mip等级尺寸是mipSize=max(1,width>>miplevel)。

This function works only on ARGB32, RGB24 and Alpha8 texture formats. For other formats SetPixels is ignored.

该函数只工作于ARGB32,RGB24和Alpha8纹理格式。对于其他格式,SetPixels将被忽略。

参见:GetPixels, Apply, mipmapCount.

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
	public Cubemap c;
	private Color[] CubeMapColors;
	public Texture2D t;
	public void Awake() {
		CubeMapColors = t.GetPixels();
		c.SetPixels(CubeMapColors, CubemapFace.PositiveX);
		c.Apply();
	}
}
// copy a texture to the +X face of a cubemap
//拷贝一个纹理到cubemap的X面
var c : Cubemap;
private var CubeMapColors : Color[];
var t : Texture2D;
CubeMapColors = t.GetPixels();
c.SetPixels(CubeMapColors,CubemapFace.PositiveX);
c.Apply(); 
//Apply changes to the face of the Cubemap
//应用改变到Cubemap的面
最后修改:2011年3月18日 Friday 16:07

本脚本参考基于Unity 3.4.1f5

英文部分版权属©Unity公司所有,中文部分© Unity圣典 版权所有,未经许可,严禁转载 。