Uzlabots japāņu valodas displejs, izmantojot pielāgotus satura procesorus
Par japāņu valodas displeju
Teksta zīmējums MonoGame izmanto SpriteFont, kā arī XNA. Informāciju par SpriteFont skatiet sadaļā Burtciparu rakstzīmju un fontu stila detaļu parādīšana, jo tā ir tāda pati kā XNA.
Ja izmantojat SpriteFont, ir jānorāda rakstzīmes, kuras vēlaties izmantot iepriekš. Ja tas ir tikai burtciparu simboli, to var izdarīt ar gandrīz bez maksas, kā rakstzīmju specifikācija un veidot laiku, jo tas ir aptuveni 100 rakstzīmes, bet, kad runa ir par japāņu, tas kļūst par tūkstošiem rakstzīmes, tāpēc veidot laiks kļūst ļoti garš. Ja norādāt tikai izmantojamās rakstzīmes, būvējuma laiku zināmā mērā var saīsināt, bet ir apgrūtinoši norādīt rakstzīmi, kas jāizmanto pretējā virzienā, un tas kļūst vēl apgrūtinošāks, ja mainās izmantojamā rakstzīme.
Atbildot uz šo problēmu, "Ninari GD"vietne ir pielāgota, lai zīmēšanas japāņu XNA vienmērīgāk (starp citu, site-run Yuichi Ito - MSFT ir viens no XNA Framework izstrādātājiem). Tas atvieglo lietojamo rakstzīmju norādīšanu, saīsinot būvējuma laiku, izrotājiet rakstzīmes un veicot citas darbības. Lai iegūtu vairāk informācijas, lūdzu, skatiet saiti.
Tomēr "WPF fontu procesors", kas iesniegts lapā ir XNA un to nevar izmantot, kā tas ir MonoGame. Tāpēc es gribētu port to MonoGame.
Lejupielādēt WPF fontu procesoru
Atveriet šīs vietnes:
Ritiniet uz leju līdz divām saitēm un noklikšķiniet uz saites iepriekš, lai lejupielādētu projektu, kurā ir kārtošanas kods. Zemākais ir tikai DLL, tāpēc jums nav lejupielādēt.
Lūdzu, izvelciet lejupielādēto failu, lai varētu izgūt saturu.
WPF fontu procesora projekta izveide
Es gribētu izveidot WPF fontu procesors DLL, kas darbojas ar "Jebkurš CPU", bet kādu iemeslu dēļ, kad es varu izveidot projektu ar "Content Pipeline Extension Library" no XNA Framework, es varu tikai izveidot to x86, tāpēc es ņemšu izveidot to no regulāras klases bibliotēka šeit.
Veidojot projektu, jums nav nepieciešams "Class1.cs", tāpēc izdzēsiet to.
Pēc tam pievienojiet atsauci.
Tā kā jūs izdarīt tekstu WPF, jums ir nepieciešams WPF saistītu atsauci. Vispirms pārbaudiet "PresentationCore" no "Framework".
Pēc tam pārbaudiet "WindowsBase". Tagad nospiediet OK pogu, lai apstiprinātu un atveriet Reference Manager vēlreiz.
Atlasiet Pārlūkot kreisajā pusē un noklikšķiniet uz pogas Pārlūkot.
Atveriet šo mapes ceļu:
- C: \\ Program Files (x86) \\ MSBuild \\ MonoGame \\ v3.0 \\ Tools \\
No turienes, pievienojiet šādus divus DLL:
- MonoGame.Framework.dll MonoGame.Framework.dll
- MonoGame.Framework.Content.Pipeline.dll MonoGame.Framework.Content.Pipeline.dll
Pārliecinieties, ka tas ir pārbaudīts, un noklikšķiniet uz OK poga.
Pārskatiet pievienotās atsauces.
Pievienojiet avota kodu no mapes "WpfFontPipeline" no projekta, kuru lejupielādējāt, lai projektā, kuru pašlaik rediģējat.
Jūsu pievienotais stāvoklis.
Pārbaudiet, vai kompilācijas konfigurācija ir "Release" un "Jebkurš centrālais procesors".
Veiciet būvējumu, lai redzētu, vai tas ir veiksmīgi uzbūvēts.
DLL ir izveidots.
Spēles projekta izveide
Izveidojiet projektu MonoGame. Tas nav svarīgi, kāda platforma tā ir.
Ievietojiet tikko izveidoto DLL mapē Saturs. Tas nav svarīgi, kur DLL ir, bet tādā gadījumā jums būs nepieciešams relatīvs vai absolūts ceļš, tāpēc es ņemšu atstāt to šeit tagad.
Atveriet Content.mgcb un atveriet Atsauces ar atlasītu saturu.
Ja jūs dubultklikšķi uz "Content.mmcb", lai neatvērtu to, sākt "MonoGame Pipeline" no izvēlnes Sākt.
Tekstlodziņā ierakstiet tikko izveidotā DLL faila nosaukumu vai ceļu, kas ir relatīvs attiecībā pret Content.mgcb vai absolūtais ceļš no tā.
Pēc tam, kad esat iestatījis to, DLL joprojām neatspoguļo, tāpēc, kad jūs saglabāt projektu, aizveriet monoGame konveijera un atveriet to.
Izveido sprite fontu. Izvēlieties "Edit" "Add→ New Item from menu.
Izvēlieties "SpriteFont Apraksts" no starp posteņiem, lai pievienotu to. (Starp citu, pēc pievienošanas SpriteFont, es atvēru SpriteFont failu, lai būtu vieglāk redzēt izpildes laikā un mainīja fonta nosaukumu un lielumu.)
Ja atlasāt Pievienoto SpriteFont, redzēsit, ka WPF fontu procesors ir pieejams no procesora.
Tā kā katru parametru var iestatīt, šoreiz es centos noteikt to, kā parādīts attēlā par laiku. Diemžēl, jūs nevarat mainīt krāsu pašreizējā versijā MonoGame Pipeline.
Mēģināt veidot. Tika uzbūvētas 6860 rakstzīmes, jo tajā bija iekļauts līdz JIS 2. līmenim. Tomēr laiks ir apmēram deviņas sekundes, lai jūs varētu redzēt, ka tas ir diezgan ātri.
Tagad mēs esam zīmēšanas, izmantojot šo SpriteFont, un kods ir tieši tāds pats kā XNA. Tekstu var zīmēt, izmantojot kodu, kas ieviests sadaļā "Rādīt burtciparu rakstzīmes", kā tas ir. Protams, japāņu ir iespējams arī.
Es gribētu likt tikai kodu, ka es pievieno vienu reizi.
Lauka definīcijas daļa. "SpriteFont" ir pievienots.
GraphicsDeviceManager graphics;
SpriteBatch spriteBatch;
SpriteFont font;
Fontu datu ielāde un izveide metodē LoadContent.
protected override void LoadContent()
{
// Create a new SpriteBatch, which can be used to draw textures.
spriteBatch = new SpriteBatch(GraphicsDevice);
// TODO: use this.Content to load your game content here
// フォントデータの読み込み
font = Content.Load<SpriteFont>("Font");
}
Zīmēšanas ar japāņu metodi Zīmēt.
protected override void Draw(GameTime gameTime)
{
GraphicsDevice.Clear(Color.CornflowerBlue);
// TODO: Add your drawing code here
spriteBatch.Begin();
spriteBatch.DrawString(font, "真・簡単(かもしれない)日本語表示",
new Vector2(50, 50), Color.White);
spriteBatch.DrawString(font, @"・OpenTypeフォント対応
・処理速度の高速化
・JIS漢字追加機能
・文字装飾",
new Vector2(50, 150), Color.White);
spriteBatch.End();
base.Draw(gameTime);
}
Kad izpildīts teksts tiek zīmēts. Tas ir nedaudz grūti saprast, bet burti ir robežas un zilas gradācijas iekšā.
Tas kļuva viegli izdarīt japāņu kā šis, un kļuva iespējams izdarīt raksturs ar apdari.
Visbeidzot, jūs nevarat mainīt krāsu teksta dekorēšanai uz monoGame Cauruļvads, bet jūs varat atvērt failu tieši un modificēt to.
Kad projekts ir saglabāts un aizvērts, atveriet .mccb failu kā teksta failu.
Ja jūs ritiniet uz leju, mērķa parametrā ir informācija par krāsu, tāpēc, lūdzu, rediģējiet to tieši tur.
Pēc teksta saglabāšanas atkal atveriet monoGame cauruļvadu un izveidojiet to. Jūs varat redzēt, ka krāsa ir mainījusies, kad to palaižat.