本文整理匯總了Java中net.minecraft.client.renderer.VertexBuffer.putColorRGBA方法的典型用法代碼示例。如果您正苦於以下問題:Java VertexBuffer.putColorRGBA方法的具體用法?Java VertexBuffer.putColorRGBA怎麽用?Java VertexBuffer.putColorRGBA使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類net.minecraft.client.renderer.VertexBuffer
的用法示例。
在下文中一共展示了VertexBuffer.putColorRGBA方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: putQuadColor
import net.minecraft.client.renderer.VertexBuffer; //導入方法依賴的package包/類
public static void putQuadColor(VertexBuffer renderer, BakedQuad quad, int color)
{
float cb = color & 0xFF;
float cg = (color >>> 8) & 0xFF;
float cr = (color >>> 16) & 0xFF;
float ca = (color >>> 24) & 0xFF;
VertexFormat format = quad.getFormat();
int size = format.getIntegerSize();
int offset = format.getColorOffset() / 4; // assumes that color is aligned
for(int i = 0; i < 4; i++)
{
int vc = quad.getVertexData()[offset + size * i];
float vcr = vc & 0xFF;
float vcg = (vc >>> 8) & 0xFF;
float vcb = (vc >>> 16) & 0xFF;
float vca = (vc >>> 24) & 0xFF;
int ncr = Math.min(0xFF, (int)(cr * vcr / 0xFF));
int ncg = Math.min(0xFF, (int)(cg * vcg / 0xFF));
int ncb = Math.min(0xFF, (int)(cb * vcb / 0xFF));
int nca = Math.min(0xFF, (int)(ca * vca / 0xFF));
renderer.putColorRGBA(renderer.getColorIndex(4 - i), ncr, ncg, ncb, nca);
}
}