Linepick...aber wie?
Übersicht

Mr HoppBetreff: Linepick...aber wie? |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo!
Ich beschäftige mich derzeitig mit Linepicks. Dabei habe ich einen Spieler (durch die Kammera simuliert), der durch ein Gebäude (Mesh) gehen soll. Trifft er nun auf Stufen, kann er diese hochgehen. Trifft er auf die Wand, soll er stehen bleiben. Der Code (sollte) wie folgt funktionieren: Wenn der Spieler mit dem Gebäude kollidiert, wird ein Linepick durchgefügrt, welches prüft, ob auf einer bestimmten höhe immernoch ein Hinderniss ist. Ist dies nicht der Fall (kleine Stufe), soll der Player sie hinaufsteigen. So viel zur Theorie.... hier der Code: Code: [AUSKLAPPEN] Graphics3D 1024,768,32,1
SetBuffer BackBuffer() AppTitle("Test") Dim fps(3) objekt=LoadMesh("Treppe.3ds") PositionEntity objekt,0,0,0 EntityType objekt,1 EntityPickMode objekt,2 cam=CreateCamera() PositionEntity cam,0,5,-6 EntityRadius cam,1,3 EntityType cam,2 Collisions 2,1,2,3 light=CreateLight() Repeat Cls TranslateEntity cam,0,-1,0 If KeyDown(17) Then MoveEntity cam, 0, 0, 0.1 If KeyDown(31) Then MoveEntity cam, 0, 0, -0.1 If KeyDown(30) Then MoveEntity cam, -0.1, 0, 0 If KeyDown(32) Then MoveEntity cam, 0.1, 0, 0 RotateEntity cam,EntityPitch(cam)+MouseYSpeed(),EntityYaw(cam)-MouseXSpeed(),0 MoveMouse 512, 384 If EntityCollided(cam,1)<>0 And objekt<>LinePick(EntityX(cam),EntityY(cam),EntityZ(cam),0,-0.5,0,3) Then TranslateEntity cam,0,1,0 UpdateWorld RenderWorld Text 5,0,"FPS:"+FPS(1):FPS(2)=FPS(2)+1:If MilliSecs()>FPS(3)+999 Then FPS(1)=FPS(2):FPS(2)=0:FPS(3)=MilliSecs() Text 5,20,EntityY(cam) Flip Until KeyHit(1) End Und hier gibt's Mesh: https://www.blitzforum.de/upload/file.php?id=797 |
||
Zitat:
Wie poste ich falsch? Nachdem ich Google, die FAQ's und die Boardsuche erfolgreich ignoriert habe, erstelle ich zwei bis fünf neue Themen, in den falschen Unterforen, mit kreativen Titeln und undeutlichem Text, unter dem sich jeder etwas anderes vorstellen kann. |
![]() |
pixelshooter |
![]() Antworten mit Zitat ![]() |
---|---|---|
nimm doch statt die höhe zu ermitteln entitytype | ||
>> Musikerstellung, Grafik und Design: http://www.pixelshooter.net.tc |
Mr Hopp |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Was meinst du damit?? Ich wüsste nicht, dass ich die Höhe irgendwo (außer einmal indirekt) prüfen würde ![]() |
||
Zitat:
Wie poste ich falsch? Nachdem ich Google, die FAQ's und die Boardsuche erfolgreich ignoriert habe, erstelle ich zwei bis fünf neue Themen, in den falschen Unterforen, mit kreativen Titeln und undeutlichem Text, unter dem sich jeder etwas anderes vorstellen kann. |
![]() |
pixelshooter |
![]() Antworten mit Zitat ![]() |
---|---|---|
naja, wenn du meinst...ich tät entitytype nehmen | ||
>> Musikerstellung, Grafik und Design: http://www.pixelshooter.net.tc |
Mr Hopp |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ähm... nochmal: Danke für deine Hilfe, aber ich werde aus deinen Super-Kurz-Antworten net schlau...was meinst du denn damit?? | ||
Zitat:
Wie poste ich falsch? Nachdem ich Google, die FAQ's und die Boardsuche erfolgreich ignoriert habe, erstelle ich zwei bis fünf neue Themen, in den falschen Unterforen, mit kreativen Titeln und undeutlichem Text, unter dem sich jeder etwas anderes vorstellen kann. |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das du die Funktion nutzt um den EntityType (also den Picktype) des Objektes rauszubekommen und dementsprechend handelst. Das geht viel schneller.
Der Name der Funktion wäre GetEntityType (http://www.blitzbase.de/befehle3d/getentitytype.htm) |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
Mr Hopp |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ähm ich weiß immer nochnicht so wirklich, was ihr meint. Nur so viel: ich habe schon einen Code, der das ganze mittels eines vorgeschobenen entitys prüft, allerdings ist der Code zu umständlich. Und auch nochmal zur Anmerkung: Treppe und Boden sind EIN EINZIGER Mesh. | ||
Zitat:
Wie poste ich falsch? Nachdem ich Google, die FAQ's und die Boardsuche erfolgreich ignoriert habe, erstelle ich zwei bis fünf neue Themen, in den falschen Unterforen, mit kreativen Titeln und undeutlichem Text, unter dem sich jeder etwas anderes vorstellen kann. |
![]() |
Fuchsi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn du Treppen steigen willst, brauchst du nur den Y-Radius deiner Spielfigur höher stellen (probieren) und sie wird einfach über die Stufen rutschen. | ||
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hatten wir dir das nicht schon mal erklärt ? | ||
Mr Hopp |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ja aber es hat sich leider noch nicht geklärt und ich wollte ein neues Thema eröffnen, da das alte eh Off-Topic war ![]() ![]() Thx schonmal für alle bisherigen und eventuell noch folgenden Bemühungen ![]() |
||
Zitat:
Wie poste ich falsch? Nachdem ich Google, die FAQ's und die Boardsuche erfolgreich ignoriert habe, erstelle ich zwei bis fünf neue Themen, in den falschen Unterforen, mit kreativen Titeln und undeutlichem Text, unter dem sich jeder etwas anderes vorstellen kann. |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Da du auf die Idee gekommen bist, alles als 1 Mesh zu machen, bleibt dir nur EntityRadius für X anders als für Y zu setzen, so das du Treppen steigen kannst. Dann brauchst du eigentlich auch kein LinePick, da reicht die normale Kollision mit entsprechendem Setup (Kollisionsreaktion 3 am ehesten)
Wenn du Treppensteigen direkt via LinePick willst so gibt es dazu einen entsprechenden Thread, da diese frage erst kürzlich gestellt wurde, wie man eine Treppe mit Picking dedektieren kann. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
Mr Hopp |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
sry dass ich so spät nochma poste aber ich hab heut nochmal mit dem Code rumprobiert.... es hat schon gereicht die Gravitation auf 0.1 runterzusetzen ![]() |
||
Zitat:
Wie poste ich falsch? Nachdem ich Google, die FAQ's und die Boardsuche erfolgreich ignoriert habe, erstelle ich zwei bis fünf neue Themen, in den falschen Unterforen, mit kreativen Titeln und undeutlichem Text, unter dem sich jeder etwas anderes vorstellen kann. |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group