Mesh Umrandung/Expansion [erledigt]
Übersicht

MatthiasBetreff: Mesh Umrandung/Expansion [erledigt] |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hay. Also wie der Titel schon sagt möchte ich gerne eine Transparente Umrandung für Meshes haben. Und bei simplen sachen wie Cylinder oder Würfel geht es ja auch, aber bei komplexeren sachen wie zb. Autos usw. fängt mein Problem schon an. Mir ist schon klar das der weg nur über denn vertex punkten gehen kann, aber ich habe keine Ahnung wo ich da anfangen soll.
Deshab wäre ich echt glücklich wenn mir jemand ein paar Tipps oder Ideen geben kann. Code: [AUSKLAPPEN] Graphics3D 800,600,32,2 ;------3DKramm---- CamPivY=CreatePivot() CamPivP=CreatePivot(CamPivY) Camera=CreateCamera(CamPivP) TurnEntity CamPivY,0,20,0 TurnEntity CamPivP,20,0,0 PositionEntity Camera,0,0,-10 CameraClsColor Camera,0,0,255 Lischt=CreateLight(1,Camera) Plane=CreatePlane():EntityColor Plane,0,200,0 MoveEntity Plane,0,-1,0 ;----Test-Modell--------" GrundModel=CreateMesh():UmrissModel=CreateMesh() ;-------Wurfel----------- Cube=CreateCube():PositionMesh Cube,-3,0,0 ScaleMesh Cube,1,1,2:AddMesh Cube,GrundModel ScaleMesh Cube,1.1,1.1,1.05:PositionMesh Cube,.3,0,0 AddMesh Cube,UmrissModel:FreeEntity Cube ;-------Cylinder-------------" Cyl=CreateCylinder(32):RotateMesh Cyl,0,0,90 ScaleMesh Cyl,3,.2,.2:PositionMesh Cyl,0,-.5,.5 AddMesh Cyl,GrundModel:ScaleMesh Cyl,1,1.1,1.1 PositionMesh Cyl,0,.05,-.05:AddMesh Cyl,UmrissModel FreeEntity Cyl ;------Sphere-----------------" sph=CreateSphere(32):PositionMesh sph,3,0,0 AddMesh Sph,GrundModel:ScaleMesh Sph,1,1.1,1.1 PositionMesh Sph,0,0,0:AddMesh Sph,UmrissModel FreeEntity Sph EntityColor GrundModel,200,0,0 EntityColor UmrissModel,150,150,255 ;---Standart-Scalierung------------ ;FreeEntity UmrissModel:UmrissModel=CopyEntity(GrundModel) ;ScaleEntity UmrissModel,1.1,1.1,1.1 ;HideEntity GrundModel AppTitle "Space=Umrandung An/Aus" EntityAlpha UmrissModel,.5 Hide=5 SetBuffer BackBuffer() Repeat: Select MouseDown(1):Case 1 TurnEntity CamPivY,0,(MausX-MouseX())*.5,0 TurnEntity CamPivP,(MouseY()-MausY)*.5,0,0 End Select Select KeyHit(57):Case 1:Hide=5-Hide EntityAlpha UmrissModel,Hide*.1:End Select MoveEntity Camera,0,0,MouseZ()-MausZ MausX=MouseX():MausY=MouseY():MausZ=MouseZ() RenderWorld Flip Until KeyDown(1)=1 End |
||
- Zuletzt bearbeitet von Matthias am So, Apr 15, 2007 13:20, insgesamt 3-mal bearbeitet
Todeskop |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ist eigentlich recht simple :
schreibe dir einfach ne funktion wo drinne steht das du das objekt copierst und um X.X scalierst und mit dem objekt parentierst. MFG Todeskop |
||
Matthias |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
@Todeskop. Ich glaube du hast das Problem nicht verstanden.
Ich will nicht das Mesh vergrößern sondernt eine Umrandung erzeugen. Aktiviere mal Standart-Scalierung. |
||
Todeskop |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ja eben du KOPIERST das gewünste mesh, SKALIERST es auf die gewünschte "Leuchtweite" und machst es TRANSTPARENT und zu guter letzt POSITIONIERST du es bei dem "alten"(nicht kopierten) mesh, das geht am besten mit ENTITYPARENT.
MFG Todeskop |
||
![]() |
FreetimeCoder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das ist es eben NICHT! was er will. Bei vielen Meshes geht das nämlich nicht. Dann sieht es nicht wie eine Umrandung aus. | ||
"Wir haben keine Chance, aber wir werden sie nutzen!"
Projekte: Dexterity Ball (100%) Aquatic Atmosfear (22 % ca 4700 Zeilen) eingefrohren mangels OOP Fähigkeiten von Blitz (ehemals Uboot) PC: Intel D 3 GHz | NVidiaGforce 6700 256 Mb | 1024 Mb DDR RAM 400 Mhz | 2x160 GB S-ATA |
Matthias |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich habe das Problem gelöst. Mann muß die Normalen benuzen. Allerdings hat nicht jedes Mesh schon automatich seine Normalen. Demzufolge braucht mann eine Function die die Normalen ausrichtet. Den Code dafür habe ich im Blitz.com gefunden. Allerdings functioniert das auch nur dann wenn alle Flächen zusammen hängen. Demzufolge braucht man noch eine Function um die Vertex zu verschweißen. Und fertig. Viel Aufwand für einen kleinen Efeckt. | ||
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Du kannst zB nach einer Comicstyle-Funktion suchen und in dieser lediglich das FlipMesh raus nehmen und dem kopierten Mesh eine Transparenz geben. | ||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group