Kehittynyt japanilainen näyttö mukautettujen sisältöprosessorien avulla
Tietoja japanilaisesta näytöstä
Tekstipiirustus MonoGame käyttää SpriteFont sekä XNA. Lisätietoja SpriteFontista on kohdassa Aakkosnumeerisen merkin ja fonttityylin tietojen näyttäminen, koska se on sama kuin XNA.
Jos käytät SpriteFontia, sinun on määritettävä merkit, joita haluat käyttää etukäteen. Jos se on vain aakkosnumeerisia symboleja, se voidaan tehdä lähes ilman kustannuksia kuin merkki erittely ja rakentaa aikaa, koska se on noin 100 merkkiä, mutta kun se tulee japanin, se tulee tuhansia merkkejä, joten rakentaa aika tulee erittäin pitkä. Jos määrität vain käytettävät merkit, koontiaikaa voidaan lyhentää jossain määrin, mutta on hankalaa määrittää käänteisessä merkin, ja siitä tulee vieläkin hankalampaa, jos käytettävä merkki muuttuu.
Vastauksena tähän ongelmaan, "Ninari GD"sivusto on räätälöity tekemään Piirustus Japanin XNA sujuvammin (muuten, sivusto-run Yuichi Ito - MSFT on yksi XNA Framework kehittäjät). Tämä helpottaa käytettävien merkkien määrittämistä, rakennusajan lyhentämistä, merkkien koristelemista ja paljon muuta. Lisätietoja on linkissä.
Sivulla esitetty "WPF-fonttiprosessori" on kuitenkin XNA:lle, eikä sitä voi käyttää monogamen muodossa. Joten haluaisin siirtää tämän MonoGame.
Lataa WPF-fonttiprosessori
Avaa seuraavat sivustot:
Vieritä alas kahteen linkkiin ja lataa lajittelukoodin sisältävä projekti napsauttamalla yllä olevaa linkkiä. Alempi on vain DLL, joten sinun ei tarvitse ladata sitä.
Pura ladattu tiedosto, jotta voit noutaa sisällön.
WPF-fonttiprosessoriprojektin luominen
Haluaisin luoda WPF fontin prosessori DLL, joka toimii "Kaikki CPU", mutta jostain syystä, kun luon hankkeen kanssa "Content Pipeline Extension Library" ja XNA Framework, voin vain luoda sen x86, joten minä luoda sen säännöllisesti luokan kirjasto täällä.
Kun luot projektin, et tarvitse Class1.cs, joten poista se.
Lisää seuraavaksi viittaus.
Koska piirrät tekstiä WPF:ään, tarvitset WPF:ään liittyvän viittauksen. Tarkista ensin "PresentationCore" "Frameworkista".
Tarkista seuraavaksi "WindowsBase". Vahvista ja avaa Referenssipäällikkö uudelleen painamalla OK-painiketta.
Valitse vasemmalla Selaa ja napsauta alla olevaa Selaa-painiketta.
Avaa seuraava kansiopolku:
- C: \\ Program Files (x86) \\ MSBuild \\ MonoGame \\ v3.0 \\ Tools \
Lisää sieltä seuraavat kaksi DLL-tiedostoa:
- MonoGame.Framework.dll -tiedosto
- MonoGame.Framework.Content.Pipeline.dll -tiedosto
Varmista, että se on valittuna, ja napsauta OK-painiketta.
Tarkista lisätyt viittaukset.
Lisää lähdekoodi WpfFontPipeline-kansiosta projektista, jonka latasit parhaillaan muokkaamaasi projektiin.
Osavaltio, jonka lisäsit.
Varmista, että koontiversion kokoonpano on "Release" ja "Any CPU".
Suorita koontiversio ja tarkista, onko se rakennettu onnistuneesti.
DLL luodaan.
Peliprojektin luominen
Luo monopeliprojekti. Sillä ei ole väliä, mitä alusta se on.
Sijoita juuri luomasi DLL-tiedosto Sisältö-kansioon. Sillä ei ole väliä, missä DLL on, mutta siinä tapauksessa tarvitset suhteellisen tai absoluuttisen polun, joten jätän sen tänne nyt.
Avaa Content.mgcb ja avaa Viittaukset, joiden sisältö on valittuna.
Jos kaksoisnapsautat "Content.mmcb" ollaksesi avaamatta sitä, käynnistä "MonoGame Pipeline" Käynnistä-valikosta.
Kirjoita tekstiruutuun juuri luomasi DLL-tiedoston nimi tai Content.mgcb-tiedoston polku tai absoluuttinen polku.
Kun olet määrittänyt sen, DLL ei vieläkään vastaa, joten kun tallennat projektin, poistu monoGame Pipelinesta ja avaa se uudelleen.
Luo sprite-fontin. Valitse valikosta Muokkaa ,Lisää→Uusi kohde.
Valitse "SpriteFont Description" kohteiden joukosta lisätä sen. (Muuten, kun olet lisännyt SpriteFont, avasin SpriteFont tiedosto helpottaa nähdä suorituksen aikana ja muutti fontin nimi ja koko.)
Jos valitset lisäämäsi SpriteFont-fontin, huomaat, että WPF-fontin käsittelijä on käytettävissä suorittimessa.
Koska jokainen parametri voidaan asettaa, tällä kertaa yritin asettaa sen kuvan toistaiseksi. Valitettavasti et voi muuttaa väriä nykyisen version MonoGame Pipeline.
Yritä rakentaa. 6860 merkkiä rakennettiin, koska se sisälsi jopa JIS tasolla 2. Silti aika on noin yhdeksän sekuntia, joten näet, että se on melko nopea.
Nyt piirrämme käyttäen tätä SpriteFontia, ja koodi on täsmälleen sama kuin XNA. Voit piirtää tekstiä käyttämällä koodia, joka on esitetty kohdassa "Näytä aakkosnumeeriset merkit". Tietenkin myös japani on mahdollista.
Haluaisin laittaa vain koodin, että olen lisännyt kerran.
Kentän määritysosa. "SpriteFont" on lisätty.
GraphicsDeviceManager graphics;
SpriteBatch spriteBatch;
SpriteFont font;
Ladataan ja luodaan kirjasintietoja LoadContent-menetelmällä.
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");
}
Piirustus japaniksi Piirrä-menetelmässä.
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);
}
Kun teksti suoritetaan, se piirretään. Sitä on vaikea ymmärtää, mutta kirjeissä on rajoja ja sinisiä asteikkoja.
Se tuli helppo piirtää japanin näin, ja se tuli mahdolliseksi piirtää merkin koristeluun.
Lopuksi, et voi muuttaa väriä tekstin koristelu monoGame Pipeline, mutta voit avata tiedoston suoraan ja muokata sitä.
Kun olet tallentanut ja sulkenut projektin, avaa .mccb-tiedosto tekstitiedostona.
Jos vierität alaspäin, kohdeparametrissa on väritietoja, joten muokkaa sitä suoraan siellä.
Kun olet tallentanut tekstin, avaa monoGame Pipeline uudelleen ja rakenna se. Näet, että väri on muuttunut, kun suoritat sen.