private void Draw(DDPicture src, string colorOrder, DDSubScreen dest) { Func <char, int> a_charToBlend = chr => { switch (chr) { case 'R': return(DX.DX_RGBA_SELECT_BLEND_R); case 'G': return(DX.DX_RGBA_SELECT_BLEND_G); case 'B': return(DX.DX_RGBA_SELECT_BLEND_B); default: throw null; // never } }; DX.GraphBlend( dest.GetHandle(), // ソース画像かつ出力先 src.GetHandle(), // ブレンド画像 255, DX.DX_GRAPH_BLEND_RGBA_SELECT_MIX, a_charToBlend(colorOrder[0]), // 出力先に適用する R 値 a_charToBlend(colorOrder[1]), // 出力先に適用する G 値 a_charToBlend(colorOrder[2]), // 出力先に適用する B 値 DX.DX_RGBA_SELECT_SRC_A // 出力先に適用する A 値 ); }
public void Perform(string spectrumFile, string jacketFile, string wDir, string cancelledFile, string successfulFile) { Ground.I.CancelledFile = cancelledFile; DDPicture jacket = DDPictureLoaders.Standard(jacketFile); // g DDResource.Load_DirectMode = true; jacket.GetHandle(); // pre-load DDResource.Load_DirectMode = false; new MovieGen0001().Main01( spectrumFile, jacket, wDir, 20, 12, 230, GetBarColor(), 0.6, 3.0 ); File.WriteAllBytes(successfulFile, BinTools.EMPTY); }
public void Test01() { DDPicture title_wall = DDPictureLoaders.Standard("title_wall.png"); title_wall.GetHandle(); }