4 * License : The MIT License
5 * Copyright(c) 2011 MikuToga Partners
8 package jp.sourceforge.mikutoga.vmd.model;
13 public enum ShadowMode {
21 * シャドウ描画の質がカメラからの距離の影響をあまり受けないモード。
22 * <p>※MMDのUIにおけるデフォルト。
27 * シャドウ描画の質をカメラからの距離に応じて劣化させることにより、
28 * カメラに近いオブジェクトのシャドウ描画の質を向上させるモード。
35 private static final int MASK_8 = 0xff;
38 private final byte code;
43 * @param code 割り当て番号(byte)
45 private ShadowMode(byte code){
52 * @param iVal 割り当て番号(int)
55 private ShadowMode(int iVal){
56 this((byte)(iVal & MASK_8));
62 * byte型値に符号化された時の値を返す。
63 * @return byte型値に符号化された時の値
65 public byte getEncodedByte(){
72 * @return 描画モード。未定義の値が与えられた場合はnull。
74 public static ShadowMode decode(byte bVal){
75 ShadowMode result = null;
77 if (bVal == NONE .code) result = NONE;
78 else if(bVal == MODE_1.code) result = MODE_1;
79 else if(bVal == MODE_2.code) result = MODE_2;
88 * @return 描画モード。未定義の値が与えられた場合はnull。
90 public static ShadowMode decode(int iVal){
91 return decode((byte)(iVal & MASK_8));