donderdag 7 juni 2012

spannend

Deze voormiddag zijn we nog een bluetooth dongle gaan halen voor de Wiimote, omdat onze stagebegeleider er graag nog eentje appart had. Juist voor de middag zijn we dan begonnen met alle benodigde software te installeren op een apparte computer die gebruiksklaar moest zijn tegen de namiddag. In de namiddag kwamen namelijk een hele hoop collega's het projectje testen.

Het was wel even spannend wat iedereen er van ging vinden. Er kwam meer volk af dan eerst verwacht. Na afloop waren ze allemaal wel tevreden met het resultaat. Enkel de wandelbeweging ging aanvankelijk niet zo vlot bij de meesten. Maar na wat oefenen ging dit bij de meesten wel redelijk goed. Ook de stagebegeleider was tevreden met wat we bereikt hebben, hij hoopt dat hij er ook andere stagaires gelukkig mee kan maken om hierop verder te bouwen.

Morgen de laatste dag hier op Userfull. De documentatie afwerken en onze werkplaats wat op orden stellen en dan zit deze stageperiode er op.

woensdag 6 juni 2012

wall of text

Vorige vrijdag hadden we in de voormiddag nog wat kleinigheden aangepast om alles klaar te krijgen voor de namiddag. We kregen de dag ervoor een remote waarmee we vanop afstand onze Kinect en Wiimote kunnen calibreren, zodat dit veel gemakkelijker verloopt. In de namiddag kwam er een collega testen en gaf wel een positieve indruk, maar had wel wat feedback. Robin stelde voor om toch maar de LED schakeling proberen te bouwen om het signaalverlies tegen te gaan.

Maandag hebben we dan de electronicawinkel RATO op Linkeroever bezocht. Kletsnat kwamen we daar aan rond half 11, maar toen zagen we pas dat voor de middag eigenlijk enkel op afspraak was en niemand tijd voor ons had. Hierdoor moesten we om half 2 terug komen. Nadat we buiten waren was het eigenlijk de moeite niet meer om nog door te reizen naar Brussel.

Gisteren wilden we de schakeling opbouwen maar hier was geen elektrische tape beschikbaar dus zijn we tijdens de middag naar de lokale Brico een rolletje gaan halen. Na de middag hebben we de schakeling opgebouwd maar uiteindelijk was de verbinding toch niet zo stabiel. Dus moesten we solderen, maar er was geen soldeergerei beschikbaar, na even rondhoren bleek er toch soldeergerei te zijn, maar deze was bij een klant. Robin ging informeren en ons Woensdag (vandaag) iets laten weten. Dan hebben we de resterende tijd maar gespendeerd aan het bijwerken van de documentatie.

Deze morgend kregen we een antwoord van een collega over het soldeergerei. Dit ging morgen pas ter onze beschikking zijn. Spijtiggenoeg was dat niet het antwoord dat we gehoopt hadden. Er was wel soldeerdraad ter beschikking dus hebben we ons moeten behelpen door een aansteker te gaan halen in de lokale Delhaize en hiermee de schakeling te solderen. Dit was toch vrij goed gelukt na wat gepruts. Maar bij het testen bleek dat de leds toch wel wat te zwak waren en ook niet van alle kanten herkend werden door de Wiimote. Robin zei dan dat we dit best konden laten rusten en laten voor was het was.

Morgen moeten we een nieuwe pc installeren en alle software overzetten zodat deze klaar voor gebruik zal zijn.

dinsdag 29 mei 2012

Nieuwe mesh, nieuwe problemen

Na vorige week de opstelling eindelijk op punt te hebben gesteld. Waren we op zoek gegaan naar een andere mesh als personage, zodat we betere mooiere armen kunnen tonen. Nadat we er een goede hadden gevonden moest deze nog gerigged worden. Natuurlijk lukte dit riggen en importeren niet van de eerste keer, moesten er nog wat aanpassingen aan de weighting van de joints en bones gebeuren voordat de mesh gemakkelijk beweegbaar was zonder te vervormen.

Vandaag hebben we dus opnieuw het character gerigged en geïmporteerd, dit keer wel met succes, dan kwam er een nieuw probleem opdagen. De animtree die er voor zorgt dat de bones aan de controllers worden gekoppeld wou niet mee werken, na meer dan een uur te prutsen was het dan toch gelukt deze nieuwe animtree te gebruiken met de nieuwe mesh.

Omdat we vorige keer een andere vector space gebruikten om de armen te laten bewegen moeten we morgen wel de bewegingen van de armen opnieuw op punt zetten, maar dat is voor morgen.

dinsdag 22 mei 2012

First person

Gisteren zaten we met het probleem dat de handen een vaste rotatie hadden, ongeacht van de movements van de armen. We zochten hiervoor een eenvoudige oplossing en zijn dan gekomen tot een controller dat een single bone kan aanpassen. Door de controller standaard op een waarde van 90° te zetten moesten we enkel de strength (een waarde van 0 tot 1) aanpassen door naar de hoogte van het hand te kijken.

Vandaag was ons doel de armen zichtbaar te maken in de eerste persoon. Dit was even zoeken naar een geschikte methode. De camera 'gewoon' op first person zetten lukte natuurlijk niet, want dan heeft het character niet echt een hele mesh, maar alleen een wapen. Wat we hebben gedaan is een socket in het hoofd van het charactermesh gestoken. Deze positie van deze socket stellen we gelijk aan de camera en zo kregen we een first person view waardoor we ook de armbewegingen konden zien.

vrijdag 18 mei 2012

Armmovements

Na gisteren een dagje vrij te gehad te hebben zijn we er deze morgen goed ingevlogen. Woensdag konden we de rechtse arm al laten bewegen. We hebben dit dat toegepast op de linkse arm, maar dit werkte niet echt naar behoren, woensdag hadden we waarden uitgelezen waarbij christophe de armbewegingen deed. Wanneer ik vandaag de armbewegingen wilde doen, werkte dit niet. We moesten dan even nadenken hoe we dit opgelost gingen krijgen.

Tijdens de middag had een collega een spelletje Unreal Tournament georganiseerd, best wel geamuseerd ;-)

Na de middag zijn we tot een oplossing gekomen voor het probleem van de armbewegingen. We hebben ervoor gezorgd dat ook de lengte van de armen gemeten en opgeslagen worden via de calibratie knop. Deze lengte gebruiken we dan in de formule om de kinect vector waarden naar de udk vector waarden om te zetten.

woensdag 16 mei 2012

Progress!

Deze morgen zijn we gestart met het testen van de stabilisatie van de headtrackings. Deze werkte naar behoren. Nadien hebben een reset geïmplementeerd in het mousescript, dit was zeker nodig omdat, als we per ongeluk de connectie met de sensorbar verliezen, we niet goed meer kunnen tracken. Deze implementatie was een succes na wat zwoegen en vloeken. Blij dat het headtracking gedeelte hiermee klaar is.

Na de zijn we verder gegaan met de functionaliteit van het bewegen van de armen in udk met de kinect. Dit heeft ook wel wat tranen gekost. Het was niet zo gemakkelijk om uit te zoeken hoe de controllers werkten. 
Uiteindelijk kwamen we op het punt dat we moesten onderzoeken welke assen van de kinect bij welke assen in udk horen. Toen we dit gevonden hadden, konden we waarden van de kinect en de armrotatie van in udk loggen om een formule te zoeken die deze aan elkaar gelijkstellen. Het resulaat  was een vloeiend bewegende arm!

dinsdag 15 mei 2012

Stabilisatie

Gisteren net voor we doorgingen wees Robin ons op een mogelijke implementatie van hoofdstabilisatie wanneer we wandelen en rondkijken tegelijk. We hebben ons hier vandaag op gefocust. Het is uiteindelijk toch  gelukt een manier te vinden. Wanneer we wandelen passen we de gevoeligheid van de muisbeweging aan. 

Morgen gaan we dit nog eens grondig testen in samenwerking met de headset.

maandag 14 mei 2012

Headtracking finishing touch

Vandaag was ons doen het afwerken van de headtracking. Het begin ging nogal moeizaam omdat de zon lastig deed en er voor zorgde dat de tracking nogal wat haperde. We dachten eerst dat er iets met de Wiimote was, maar het was dus gewoon het zonlicht. Wat we nog hebben toegevoegd aan de headtracking is wanneer je helemaal naar links of rechts kijkt, dat dan het character naar die kant gaat draaie.

In de namiddag hebben we gezocht naar een manier om de ingame camera te resetten naar de nulpositie. Dit was even moeilijker dan oorspronkelijk gedacht, maar uiteindelijk was het dan toch gelukt deze functie te maken en te binden aan een key.

donderdag 10 mei 2012

Some progress

Na een zeer onangename vertraging met de trein deze morgen, toch met volle moed verdergewerkt aan het tonen van de armen. Eindelijk is het ons dan toch gelukt om een paar geimporteerde armen werkende te krijgen. Hierna is het de bedoeling dat we de bones kunnen aanspreken die in de armen zitten en deze te laten bewegen aan de hand van de waarden die we binnekrijgen van de Kinect.

De bluetooth dongle die we oorspronkelijk gebruikten hebben we teruggekregen van Robin, dus we konden verder werken aan de headtracking. Hier hebben we in de namiddag aan verder gewerkt. Om ons character te laten draaien als we extreem naar rechts of links kijken. We dachten dat dit wel redelijk gemakkelijk ging zijn, maar dat was natuurlijk niet het geval.

Het draaien gaat toch nog niet zo vlot, dus we zullen hier morgen dus nog wat verder aan moeten werken.

dinsdag 8 mei 2012

Zucht...

Vandaag ging het weer moeizaam, heel de dag geprobeerd een paar handen op het scherm te krijgen die we besturen. Spijtiggenoeg lukt dit nog niet meteen. Hopelijk zien we morgen het licht, anders weet ik niet wat aan te vangen.

maandag 7 mei 2012

Moeizaam

Deze morgen hebben we nogmaals geprobeerd de nieuwe bluetooth dongle aan de praat te krijgen met de Toshiba bluetooth stack drivers, maar helaas geen succes. We konden de wiimote dus niet goed connecten. Morgen krijgen we hopelijk de oude dongle terug van Robin.

We hebben dan maar besloten wat opzoekwerk te doen over het implementeren van handen die we mogelijks realtime kunnen laten bewegen via de kinect. Dit zal geen lachertje worden. ;)

vrijdag 4 mei 2012

Headtracking

Vandaag zijn we begonnen met het finetunen van de muisemulatie via headtracking.

We gebruikten eerst maar 1 IR om te testen. We hebben dan een scriptje geschreven waarbij de we de positie van een linkse en rechtse led gaan vergelijken om het punt te bekomen dat in het midden ligt. Ook hebben we ervoor gezorgd dat de muis niet meer glitched doordat de wiimote geen IR signaal meer ziet.

Na de middag hebben we naar wat mogelijkheden gezocht om ons character te laten draaien, want nu kan er maar ongeveer 180° rondgekeken worden. We zijn uiteindelijk toch tot een mogelijke oplossing gekomen. Dit gaan we dus maandag proberen te implementeren.

maandag 30 april 2012

Progress, toch een beetje dan.

Er is weer een nieuwe week aangebroken. Spijtig genoeg niet met een brugdag ;-)

Deze morgen waren we op post om 9u we zijn direct weer in de code gevlogen om de library te binden aan UDK. We hadden vrijdag op het forum van de UDK om hulp gevraagd i.v.m. het binden van deze library, maar blijkbaar wist niemand raad.

Uiteindelijk raadde iemand aan om GlovePIE te gebruiken en hiermee muisbewegingen te simuleren. We wilden dit eerst niet gebruiken omdat we geen appart programma wilden draaien naast UDK. Na weer een paar uur te verspillen aan het snappen en aan de praat krijgen van de library in UDK hebben we het opgegeven en zijn we gaan kijken hoe GlovePie werkte.

De scriptjes schrijven om de input van de Wiimote om te zetten naar muisbewegingen hadden we snel onder de knie. Morgen is het onze taak deze bewegingen te finetunen met de HMZ-T1.

vrijdag 27 april 2012

Q_Q

Deze morgen zijn we begonnen met de WiimoteLib aan de praat te krijgen in de Unreal Development kit.


Long story short, we zijn maar een klein stapje dichter bij de oplossing voor dit zeer frustrerende probleem.

donderdag 26 april 2012

Wiimote

Deze morgen zijn we aan de slag gegaan met de Wiimote. Al snel kwamen we tot de conclusie dat de bluetooth dongle die we gekregen hadden van een draadloze headset was. Na een uurtje dit aan de praat te krijgen met de Wiimote hebben we een andere dongle moeten zoeken.

Nu dit probleem opgelost was zaten we weer met een ander probleem. De Wiimote die we ter beschikking hebben is van een nieuwe generatie Wiimotes en deze werkte niet met de wiimotelib dll. Dus moesten we hiervoor een oplossing vinden. Na lang zoeken vonden we geen andere dll libaries die werken met dit type Wiimote.

Na de middag vonden we eindelijk iets! Ergens op een forum vonden we de ID: 0x306 waarmee de computer communiceert met de Wiimote. Deze was verschillend van de vorige types. We hebben dan de sourcecode van de Wiimotelib aangepast met deze nieuwe ID: 0x330. Daarna werkte het uiteindelijk!

Hieronder een korte demo van een testapplicatie die we hebben gebruikt om de opstelling te testen.


Morgen kunnen we beginnen met de Wiimote aan de praat te krijgen in de Unreal Development Kit.

woensdag 25 april 2012

Progress

Deze morgen toch verder gewerkt aan de walk gesture. Stapjes zetten lukte gisteren juist op het einde van de dag, maar dit waren maar kleine stapjes. Het character een aantal stappen na elkaar te laten zetten was blijkbaar niet zo simpel op te lossen. Zelfs met een for lus dat 10x een stapje zou moeten zetten lukte dit niet.

Na lang zoeken hebben we het anders aangepakt, door de for lus op een andere plaats te zetten en het gebruik van wat tellers hier en daar is dit toch gelukt. Na de middag hebben we deze beweging nog wat gefinetuned.

Hieronder een korte demonstratie ;-)





dinsdag 24 april 2012

Volle moed

Deze morgen terug begonnen met coderen aan de loopbeweging, omdat we nog moesten wachten op de Wii. Op een half uurtje hadden we een een check geïmplementeerd om de afwisselende beweging van de benen op te vangen.
Na deze test moesten we waarden proberen te sturen naar een andere klasse om input te simuleren. Dit was niet gemakkelijk. We hebben hier heel veel tijd verloren. 

Rond de middag bracht onze stagebegeleider de Wii binnen, deze hebben we dan meteen uitgepakt en aangesloten. Dan was het alweer tijd voor te lunchen.

Na de middag zijn we terug in de code van de kinect gevlogen, maar helaas we zagen het licht niet snel. We hebben raad moeten vragen op het forum van de UDK. Hier kwam wel reactie op maar deze hielp niet echt. Uiteindelijk hebben we het uitlezen van de waarde in een andere klasse moeten steken om te laten werken. Toen konden we uiteindelijk voort, maar was het al tijd om naar huis te gaan.

Morgen zullen we de beweging nog verfijnen en dan beginnen we aan de head-tracking. Hopelijk ondervinden we hierbij minder problemen ;-)

maandag 23 april 2012

Tweede week!

De tweede week is goed van start gegaan.

In de ochtend eerst een kleine meeting met onze stagebegeleider over de mogelijke opties voor het head-tracken. We zijn afgestapt van het idee om zelf infrarood ledjes in te bouwen in een pet. We zijn het samen eens geworden dat we de Wii sensor bar gaan gebruiken.

Na deze meeting zijn we met onze desktops verhuisd naar de bibliotheek, omdat we zo beter samen kunnen werken. We zaten eerst gewoon op de bureau tussen de andere werknemers. Hier moesten we vrij stil zijn om de programmeurs niet te veel lastig te vallen. Nu zitten we ook naast elkaar wat gemakkelijker werkt dan tegenover elkaar.



Na de verhuis zijn we in de code gevlogen om de waarden die we gaan uitlezen van de joints te gebruiken om na te kijken of er een wandelbeweging gemaakt wordt. Hier moesten we even over nadenken. We zijn dan op het idee gekomen om de gebruiker de eerste 5 seconden stil te laten staan en  alle waarden van de joints op te slaan, een soort van calibratie dus. Hierna konden we gemakkelijk vergelijken tussen de data die we binnenkrijgen om zo te checken of er een wandelbeweging gemaakt wordt.


vrijdag 20 april 2012

Week 1

De eerste week is al voorbijgevlogen. Hopelijk blijft dit zo duren.

De dag is nogal redelijk stroef verlopen. Deze morgen probeerden we eerst wat waarden van de Kinect joints uit te lezen in de Unreal Development Kit en de printen in de console app hiervan. Maar om de een of andere reden startte onze UDK niet meer op met deze app. We hebben een aantal dingen geprobeerd, maar helaas. We hebben even moeten reïnstallen.

Na deze problemen boekten we goede vooruitgang. Niet vlekkenloos natuurlijk, we moeten functies en klassen van UnrealScript van de UDK nog wat gewoon worden natuurlijk. Kort voor de lunchpauze was het dan toch gelukt om de waarden van de joints uit te lezen en af te printen. De lunchpauze deed wel deugd na deze frustraties.


In de namiddag zijn we begonnen met de documentatie op te stellen van ons project. Namelijk de milestones en de planning voor de komende weken, moesten vandaag klaar zijn. Tijdens het opstellen van deze planning en milestones moesten we nog even nadenken hoe we de headtracking opstelling het best zouden doen, we zijn dan tot een pet gekomen met daarin drie infrarood leds, aangesloten aan een batterij. Een wiimote zal deze dan opvangen en hiermee dus de beweging van het hoofd registreren.

Genoeg geschreven, nu weekend. Tot volgende week ;)

donderdag 19 april 2012

New toy!

Eerste werk was het in orde krijgen van de kinect api in de unreal development kit. Dit was nog vrij gemakkelijk door middel van een .dll van de officiële kinect SDK. We kunnen de wereld al opstarten en onszelf en het skelet al tevoorschijn toveren.


Rond een uur of 10 kwam onze stagebegeleider met een verassing af, hij was de namelijk de bril gisteren al gaan halen. Die hebben we dan natuurlijk ook meteen getest. Het is wel iets leuks ;-). 
Om de 3D functies goed aan de praat te krijgen met de unreal engine moeten we nog een nieuwe grafische kaart bestellen dit konden we nog niet testen. Maar het geanimeerde testbeeld zag er wel goed uit.

In de namiddag zijn ik en Christophe nog even apart gaan zitten op het even te hebben over hoe we nu precies ons hoofd gaan laten tracks, denkelijk gaan we hiervoor de infrarood sensor van een Wiimote gebruiken samen met IR ledjes op ons hoofd, maar hoe precies dit gaat lukken weten we nog niet.


woensdag 18 april 2012

Third day's a charm

Vandaag zijn we van start gegaan te zoeken naar een leverancier voor de HMZ-T1 bril. Bij Sony zelf kon deze niet direct besteld worden, dus moesten we rondbellen om een exemplaar dat ergens op stock was te bemachtigen. Na een uurtje rondbellen zijn we uiteindelijk bij een Mediamarkt terecht gekomen waar er nog ééntje op stock was.

Daarna heb ik naar een grafische kaart gezocht die in staat is 3D stereoscopisch beeld te leveren en een goede prijs/kwaliteit-verhouding heeft. 

Na de middag was het weer tijd om nog wat op te zoeken en tutorialsfilmpjes te bekijken om vertrouwd te geraken met de 'unreal development kit'. Dit heeft zowat heel de namiddag in beslag genomen.

dinsdag 17 april 2012

Een nieuwe dag

De tweede dag ging goed vooruit. Onze stagebegeleider ging pas ter plaatse zijn in de voormiddag dus hebben we nog wa ideetjes opgezocht. Daarna even samengezeten en uiteindelijk tot een opdracht gekomen.

De opdracht waarvoor we gekozen hebben is een virtuele wereld maken die we kunnen bekijken met een virtuele bril met 3d functies en waarin we ons kunnen verplaatsen via de kinect controller. In de namiddag heb ik met Christophe wat informatie opgezocht over de Unreal engine waarin we deze virtuele wereld gaan bouwen.

Daarna zijn we begonnen met het opstellen van een schema met de stappen die we gaan doorlopen tijdens de ontwikkeling van de opdracht. Rekening houdend met de moeilijkheidsgraad van de stappen, dus van moeilijk naar gemakkelijk. Dit schema hebben we nog even besproken met de stagebegeleider daarna zat de tweede dag erop, eerste werk morgen is het zoeken naar een 'Sony HMZ-T1' multimediabril.


maandag 16 april 2012

Eerste stagedag

De eerste stagedag is rustig verlopen. Ik werd verwacht om 10u deze morgen. Eerst werd er uitleg gegeven over het invullen van de tijdsindeling en het nog wat andere algemene informatie. Daarna kreeg ik een rondleiding en werd ik voorgesteld aan de medewerkers van het bedrijf. Net voor de middag ben ik nog even samen gaan zitten om wat ideeën te bespreken met m'n stagebegeleider. Na de middag heb ik en collega student Christophe nog wat naar ideeën gezocht om morgen weer voor te stellen aan de stagebegeleider.