julojenis

MS Windows MultiPoint jednoducho…

Včera som po dlhšom čase “objavil” to, po čom som už dlhší čas veľmi poškuľoval. A bolo to veľmi príjemné objavenie.

Pred dajakým časom som sa dozvedel, že MS dal k dispozícii čosi, čo pomenoval ako MultiPoint Server (ďalej už iba MPS). Prečítal som o tom zopár článkov, popozeral zopár videí a začal som mať pocit, že toto by som chcel mať doma. Ako tak šiel čas, videl som MPS aj v akcii na viacerých seminároch, konferenciách a čím ďalej, tým viac som bol presvedčený, že ak toto nenasadíme, resp. nezačneme používať, tak budeme sami proti sebe.

V tomto týždni sme si u nás organizovali seminár o VB.NET. Chceli sme sa na ňom posunúť trocha ďalej a odovzdať  si navzájom  naše .neťácke vedomosti. No a keďže som chcel, aby sme boli všetci na rovnakej hw a sw platforme, tak ma napadlo, že tu by som mohol ukázať, ako dobrý ten MPS vlastne je. A tak som nelenil, stiahol som si inštalačku, napálil na DVD a už som inštaloval.

Inštalácia zbehla bez problémov. Ihneď po štarte systému som si všimol, že som stiahol verziu 2010 a ja som chcel, aby to bola 2011. Tak som proces zopakoval ešte raz, tentokrát som si stiahol MS MPS 2011 Standard. Napálenie iso obrazu na DVD   , vsunutie DVD do mechaniky, reštart PC a potom už len taká jednoduchá inštalácia, ako ešte nikdy predtým. Nerátal som to, ale myslím, že to nebolo  viac ako 5 jednoduchých (naozaj jednoduchých) otázok a systém nabehol tak, ako som si predstavoval. To som mal pripojenú jednu klávesnicu, myš a jeden monitor. No a tu začali moje experimenty, ako ten systém pripraviť tak, aby na jednom PC mohli pracovať viacerí užívatelia. Keďže PC, na ktorom som robil test, je dostatočne silné, tak pripojiť ďalšie klávesnice a monitory nebol žiadny problém. Spustil som si program  na správu MPS a … Nič. Myslel som si, že tam uvidím viac monitorov, resp. staníc. Program vie vyhľadávať dostupné stanice, ale nech som robil čokoľvek, žiadne stanice som nenašiel.

Všetko toto som robil posledný deň pred spomínaným seminárom a keďže čas je neúprosný hráč, postavil ma do úlohy porazeného a ja som sa s chuťou pustil do odovzdávania a prijímania vedomostí vo svete programovania – bez MPS.

Po troch dňoch sa seminár úspešne skončil, ja som sa vrátil do svojho kanclíka a tam na mňa smutne hľadel PC s nainštalovaným MPS. A akoby na mňa volal: “Poď, dnes to rozbeháme”. No a tak som si dal povedať. Všetko som to vypol a nanovo zapol. A potom sa stalo čosi, čo som veľmi nečakal. Systém po novom naštartovaní si začal ošahávať všetko, čo som mu dal k dispozícii a keď zistil, čo som na neho navešal, začal mi vypisovať informácie, ktoré považoval za správne na to, aby ma dostal tam, kam som chcel byť, teda pri funkčnom MPS. Hlášky systému boli veľmi stručné a tak ma ich stručnosť a prehľadnosť primäli k tomu, aby som si ich prečítal. Hneď pri prvej som si všimol, že systém má snahu čosi vylepšiť, aby vedel pracovať s viacerými stanicami. Tak som ho poslúchol a robil som to, čo odo mňa chcel. Chybová hláška zmizla, ale stanice som znova nevidel. Spustil som systém ešte raz, nabehol veľmi rýchlo, už bez chýb, ale stanice neboli nikde k dispozície. Tak som si povedal, že to asi nepôjde tak, ako som si to vymyslel ja. Môj problém spočíval totiž v tom, že som chcel stanice vyrábať bez použitia pomocných krabičiek, ktoré vždy boli použité pri prezentáciách, na ktorých som MPS videl. Chcel som to urobiť iba tak, že:

  • mám PC s viacerými grafickými kartami (také jedno  som zhodou okolností mal pri sebe, lebo kolega, ktorý ho používa si momentálne užíva procedúry v kúpeľoch)
  • PC má viac USB portov (toto je ľahko dosiahnuteľné viacerými spôsobmi) a do nich sa budú pripájať klávesnice a myši.

Na takejto konfigurácii, teda viac monitorov pripojených priamo k jednému PC, som chcel postaviť moju kampaň za používanie MPS. S použitím tých krabičiek sa mi totiž rapídne zvyšovali vstupné náklady a to sa mi nepáčilo.

Keď som teda ako opäť neúspešná hráč opäť zasadol za svoj stôl, otvoril som si prvý návod, čo mi na webe padol do oka a našiel som v ňom tento obrázok:

image 

Nech som naň hľadel z akéhokoľvek uhla, nikde som žiadne pomocné krabičky nevidel (mám na mysli krabičky na pripojenie monitorov, klávesnice mi až tak nevadili). To predsa v tom MS nemôžu robiť návody, ktoré by nefungovali, som si povedal a poď ho naspäť ku konfigurovanému MPS.

Preklikal som zopár obrazoviek a našiel som tam správu, že čosi nesedí s klávesnicami. Spáva ma nabádala k tomu, aby som použil USB HUBy. Bol som si istý, že USB HUBy, ktoré bežne používame, nemajú žiadnu pridanú hodnotu, iba to, že miesto jednej diery mám na stole k dispozícii 3. Omyl. Stiahol som od kolegov 2ks USB HUBov, do nich som pripojil klávesnice a myši, pripojil som dva monitory, zhodil systém, naštartoval nanovo a čuduj sa svete, všetko zafungovalo presne tak, ako som od začiatku očakával. Zrazu systém videl dve stanice, bez problémov som si vedel vyskúšat všetky funkcioanlity MPS a s veľkou radosťou som odišiel domov na víkend v presvcedčení, že sa o tom musím podeliť a preto to všetko píšem. Ešte by som pripísal, že keď som to spájal bez tých USB HUBov, tak ani monitory mi nesvietili dva, ale iba jeden. Tie HUBy su naozaj potrebné k tomu, aby to celé chodilo (veď aj na obrázku s návodu sú tie klávesnice s myšami pripájané do USB krabičiek.

Ak som týmto článkom dakoho pohoršil, tak sa mu ospravedlňujem, ja som iba chcel opísať môj omyl, aby náhodou ho neurobil aj niekto iný. Pripájam aj fotky, na ktorých je vidieť, čo som nakoniec “dokázal”.

WP_000345

Zadná strana PC s pripojenými monitormi a klávesnicami.

 

WP_000349

Systém MPS k dispozícii na každej stanici. Na klávesniciach vidno použité USB HUBy.

WP_000350

Každá stanica mala inú klávesu, ktorou sa oživila, táto si pýtala stlačenie “B”, druhá chcela stlačenie písmena “C”

WP_000353

Na každej stanici už beží čosi iné….

Ak sa dakto rozhodne, že to skúsi tiež, nech sa mi ozve. Ja dnes už viem, že ak sa ma na niektorej škole spýtajú, ako majú zariadiť PC učebňu, čo im budem odpovedať : ” MPS! ”

WP_000360

A už s troma monitormi, aj so spusteným Visual Studiom 2010 (Express, VB.NET). Práca na staniciach je úplne skvelá, traja kolegovia sme si to skúsili naraz a ani sme nezistili, že robíme naraz viacerí  (akurát sme si tahali navzájom prepletené káble Úsmev, ale to je už o inom probléme..)

Pekné chvílky s MPS praje julo

Blogovanie na aspnet.sk pomocou Windows Live Writer II

Dnes som sa pokúsil vytvoriť svoj prvý blog. Teda príspevok do blogu. A keďže som bol z toho celý roztrasený, tak som pri písaní stlačil dajaký ten Escape naviac a čo som napísal, to som napísal. Bolo to kdesi, kde som to už nenašiel. A vtedy som si spomenul, že mi Igor Stanek pekne radil, že mám použiť Windows Live Wrriter. Tak som si ho spustil a začalo sa ma to vypytovať veci, ktoré boli zo začiatku jasné, ale postupne sa to zmenilo na veci, s ktorými som si nevedel rady. Pomohol mi až opäť Igor, týmto mu ďakujem. No a pre tých, čo by im to mohlo pomôcť tiež, prikladám obrazovky, ako sa to celé má vyplňať.

Prvý screen je jasný, treba vybrať “Ďaľšie služby”:

image

Po tomto screene príde na rad ďaľší. V ňom sa zadávajú údaje, ktoré ste dostali, ak vám bol vyrobený blog. V mojom prípade to vyzeralo takto:

image 

No a po tomto screene som narazil na otázky, ktoré ma zastavili. Bolo treba vyplniť nasledovné dve položky. Vyskúšal som veľa permutácií a kombinícií, možno aj variácií, ale ani jedna nebola správna. Pohladal som po webe a keď som nič nenašiel, apísal som Igorovi. Dostal som radu a tá mi pomohla.

Uvedené nastavenia sú správne a funkčné.

image

Pozn: webovú adresu treba zadať v tvare : http://blog.vyvojari.sk/blogs/metablog.ashx, teda bez mena, to si dohladá Writer sám podľa loginu.

Po stlačení klávesu Ďalej to už išlo všetko ako po masle, bez problémov sa mi Writer skonfiguroval a tento príspevok je jeho prvým výtvorom. Teším sa na ďaľšiu spoluprácu s ním Úsmev

julo

Game State Management v XNA programoch

XNA Game Studio je označenie nástroja, ktorý je určený na tvorbu hier. Je to množina funkcií, ktoré v spolupráci s Visual Studiom vytvárajú prostredie vhodné na tvorbu hier. Verzia 1.0 bola verejnosti predstavená v roku 2005 a dnes je k dispozícii aktuálna verzia 4.0. Každá verzia obohatila svojho predchodcu o nové možnosti. Dnes sa pomocou XNA GS 4.0 dajú vytvárať hry pre platformu Windows, Xbox 360 a Windows Phone.

Pri písaní programov (hier) som narazil na rôzne problemiky, ale jeden z nich sa mi po čase začal javiť už nie ako problemik, ale ako problém. Ten problém súpočíval v tom, že som nevedel efektívne pracovať s viacerými obrazovkami. Napr.:

  • chcel  som v programe chcel urobit pauzu a to som chcel na rozbehnutej hre vykreslit dalšiu obrazovku
  • riešenie rôznych levelov
  • info o skonšení hry
  • zobrazovanie helpov

Tento problém som riešil systémom “skrabania sa ľavou rokou na pravom uchu”, niekedy s väčším, inokedy s menším úspechom, ale vždy to bolo spojené s neistotou a obavou, že či sa mi to vôbec podarí urobiť. No a keďže tento strach bol väčší ako je únosná miera, začal som hľadať na toto riešenie. Čiastočne som ho našiel v tom, že VS 2010 prinieslo šablonu projektu, ktorá spája výhody Silverlight a XNA dokopy, ale po niekoľkých pokusoch som si povedal, že by bolo vhodné ešte čosi, čo by bolo čisto XNA. A našiel som na APP HUBe ukážku aplikácie, ktorá sa presne zaoberal tým, čo som potreboval. Stiahol som si tento príklad GameStateManagementSample a keď som si ho spustil, zistil som, že je to presne to, čo potrebujem. Príklad mi ukázal, že program dokáže:

  • pracovať s viacerými typmi obrazoviek (nyzývam ich obrazovky hier, otázok a prerušení)
  • je to postavené iba na filozofii XNA (týmto nechcme povedať ze kombinácia Silverlight a XNA je zlá, to vôbec nie, iba sa mi jednoducho nehodila táto kombinácia do mojej hry)
  • všetko je to kdispozícii so zdrojovými kódmi a tak sa z toho dá veľa naučiť a preobiť si to podľa toho, ako sa komu páči.

No a po tomto zistení som už iba začal skúmať, ako najjednoduchšie a najrýchlejšie vytvorím nový projekt, ktorý bude stáť na tejto filozofii. Tu je môj postup. 

 

1.  Vytvorme si vo VS novy projekt. V mojom prípade som vyrábal projekt pre jazyk Visual Basic, XNA Game Studio, s názvom WPhG_HladanieMuzea_GSM.

image

2. Stihnime si súbor GSMSample_4_0_Mango_VB.zip (popr GSMSample_4_0_Mango.zip ak chceme robiť v C#). Tento súbor rozbaľme do pomocného adresára (ja som ho rozbalilrovno na ploche…) . Po rozbalení dostaneme takúto štruktúru adresára.

image

3. do nášho projektu WPhG_HladanieMuzea_GSM doplňme nasledovné súbory (klikneme pravým tlačidlom v Solution Exploreri na náš projekt –> Add –> Existing Item):

- z adresára GameStateManagement tieto súbory:

image

- z adresára GameStateManagementSample tieto súbory:

image

- pri vkladaní dostaneme otázku, na ktorú odpovedáme “Ano” (popr. “Yes” Úsmev)

image

- do  nášho projektu vložíme nový Folder s názvom Screens. Do tohoto adresára vložíme z adresára GameStateManagementSample\Screens tieto obrazovky:

image

(kľudne tam môžeme vložiť aj všetky obrazovky, tieto sú ale nutné na spustenie iba Windows Phone aplikácie)

- z adresára  GameStateManagementSample\Content doplňme tieto súbory (teraz berieme všetky):

image

4. otvorme si súbor ScreenFactory.vb. Vymažme riadok Imports GameStateManagement. V riadku

Public Function CreateScreen(ByVal screenType As Type) As GameScreen Implements GameStateManagement.IScreenFactory.CreateScreen

vymažme GameStateManagement.

Pôvodný stav :

image

Po úprave :

image

5. Vymažme súbor Game1.vb

6. Otvorme si súbor Game.vb a vymažme z neho riadok Imports GameStateManagement

7. Do projektu doplňme nasledovné referencie:

image

8. Stlačme F5 a mal by sa nám spustiť projekt, založený na myšlienke GameStateManagement. O tom, čo sa všetko v ňom nachádza a čo je potrebné k tomu, aby sme tento typ projektu “ohli na svoj obraz”, o tom až v inom blogu. Je asi možné uvedený postup robiť aj inak (napr. vložením noveho projektu do našeho novo vytváraného, ale pri mojich pokusoch mi to vždy akosi nefungovalo dobre. Asi som čosi zle urobil…) Tento postup, ktorý som práve opísal som otestoval na viacerých hrách, vždy mi zafungoval a tak som sa oň chcel podeliť. O tom, čo som pomocou neho povytváral, dakedy nabudúce. (bude to asi uážka hry zameranej na výuku testovania štatistických hypotéz.)

julo

Viac príspevkov