Momenteel zit ik vast met een probleem, en weet niet hoe ik dit makkelijk kan oplossen. Daarom vraag ik jullie hulp! Normaal programmeer ik in vb .net, dus het kan zijn dat ik sommige functies/codes niet herken/begrijp.

Wit = transpirante achtergrond
Geel = Het licht dat een lamp uitstraalt.
Rood = Wat weggehaald moet worden.
Zwart = Muren
Het moet een cirkel zijn ivm het doorrekenen van collision.
• Graphics met .moveTo en .lineTo, en deze in een loop gooien voor een cirkel, met de punten berekend door sin en cos.
Dit is te intensief voor het spel zelf.
• De .curveTo methode?
Hieruit krijg je:

Zoals je kan zien is de blauwe, bollige cirkel, die met curveTo gemaakt is
De groene is een ronde cirkel die even groot hoort te zijn.
Het probleem
Een lamp die tegen een muur schijnt, houdt het licht tegen. Er wordt tijdens het spelen een lamp neergezet, en de schaduw bij genereren. Aangezien een plaatje meer zegt dan woorden:
Wit = transpirante achtergrond
Geel = Het licht dat een lamp uitstraalt.
Rood = Wat weggehaald moet worden.
Zwart = Muren
Het moet een cirkel zijn ivm het doorrekenen van collision.
Wat ik heb geprobeerd
• Oval tool, alleen kan niet de code vinden voor een gedeelte van een cirkel• Graphics met .moveTo en .lineTo, en deze in een loop gooien voor een cirkel, met de punten berekend door sin en cos.
Dit is te intensief voor het spel zelf.
• De .curveTo methode?
Flash ActionScript 3:
Rommelige code, kan nog wel wat opruimen.1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| var mc:MovieClip = new MovieClip(); mc.graphics.beginFill(0x000FF0); var xm:Number = 250; var ym:Number = 150; var r:Number = 100; var x1:Number = xm-r; var x2:Number = xm+r; var x12:Number = xm; var y1:Number = ym-r; var y2:Number = ym+r; var y12:Number = ym; mc.graphics.moveTo(x1, y12); mc.graphics.curveTo(x1, y1,x12 ,y1); mc.graphics.curveTo(x2, y1,x2,y12); mc.graphics.curveTo(x2, y2,x12,y2); mc.graphics.curveTo(x1, y2,x1,y12); mc.graphics.endFill(); addChild(mc); |
Hieruit krijg je:

Zoals je kan zien is de blauwe, bollige cirkel, die met curveTo gemaakt is
De groene is een ronde cirkel die even groot hoort te zijn.
De oplossing
Als ik een oplossing heb gevonden, zal dat hier komen te staan.offtopic:
Wel jammer dat er geen as3 ondersteuning is, en paint skills FTW
!
Wel jammer dat er geen as3 ondersteuning is, en paint skills FTW
