Armed-Assault.de Twitter
Antwort
 
Themen-Optionen Ansicht
Alt 05.08.2017, 05:53   #1 (permalink)
Newbie
 
Registriert seit: 08.08.2015
Beiträge: 36
Standard Korrekte Positionierung anhand relativer Ausrichtung

Hi,

ich hab' ein Problem beim Ausrichten von mehreren Objekten anhand eines Basisobjekts.

Ich will auf der Karte ein Lagerfeuer platzieren. Die Ausrichtung dieses Feuers soll die Ausrichtung aller weiteren, dazu gehörenden Objekte bestimmen. Also z.B.

- 1 Lagerfeuer (vorher auf Karte gesetzt, stellt die Mitte dar, gibt die Ausrichtung vor, z.B. dir +0)
- Zelt 1: x+0, y+3.5, dir +0 (relativ zum Feuer, also oben drüber)
- Zelt 2: x-3.5, y+0, dir -90 (relativ zum Feuer, also links daneben, gedreht)

Wie stelle ich es im Scripting jetzt so an, dass sich diese Positionierung anhand des Winkels des Feuers entsprechend anpasst, d.h. sich alles korrekt ausrichtet, wenn ich das Feuer z.B. um 90° drehe, dass Zelt 1 dann x +3.5, y +0, dir +90 ausgerichtet ist?

Gibts da mathematisch was Sinnvolles zum Anwenden? Es hört sich nach Vektoren an, aber ich hab' leider zu wenig Plan, das auszuhirnen.

Jemand 'ne Idee oder Richtung für mich?
wolkenstuermer ist offline   Mit Zitat antworten
Alt 06.08.2017, 21:10   #2 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Pfandgiraffe
 
Registriert seit: 16.09.2008
Ort: Berlin
Alter: 31
Beiträge: 1.724
Pfandgiraffe eine Nachricht über ICQ schicken Pfandgiraffe eine Nachricht über Skype™ schicken
Standard

Vielleicht hilft dir das schon weiter?

https://community.bistudio.com/wiki/...om_Composition


Grüße
__________________
Niemand hat die Absicht eine Tüte zu bauen!
Pfandgiraffe ist offline   Mit Zitat antworten
Alt 09.08.2017, 04:59   #3 (permalink)
Newbie
 
Registriert seit: 08.08.2015
Beiträge: 36
Standard

Hi Pfandgiraffe,

danke dir, Composition kenne ich, aber wenn ich das Beispiel von Lawrov im BI-Forum richtig verstehe, ist da wirklich Hardcore-Programmierung gefragt, das dann in einem Skript zu verwenden (er hat da ein komplettes Mod dafür geschrieben), das war mir zu kompliziert.

Ich suchte das eigentlich zum Skripten, bin dann irgendwie an ModelToWorld hängen geblieben, was aber dummerweise kein Terrain mit einberechnet (dann hängt alles in der Luft, beim Spawnen, je nach Gelände).

Es funktioniert aber - für die, die das interessiert - mit getRelPos.
Beispiel einer einfachen Wasserflasche, die in Relation zu einem Objekt (z.B. Helipad) gespawnt wird. Der Vorteil und auch der Sinn für den ganzen Aufwand liegt darin, dass man die Komposition, die man spawnt, mittels der Richtung des Objekts drehen kann.

In meinem Fall war das ein Mini-Camp von Banditen (zwei Zelte, ein paar Schlafsäcke, ein paar Flaschen und Gedöhns, sowie zufällige Ammokisten und eine Patrouille, die darum kreist). Ich wollte das so spawnen lassen, dass sich die Komposition im Editor dann mittels Drehung des Hilfs-Objekts (Helipads) komplett um dieses Zentrum drehen lässt, um z.B. die Öffnung von Camps, Lagern, etc. in die gewünschte Richtung drehen zu können.

Mit getPos bringt das nix, weil es keine Relation kennt. Da drehen sich dann alle Gegenstände um sich selbst. Oder man darf mit Vektoren und Co rumhantieren, wofür mein Hirn zu klein ist

(_center ist das Hilfs-Objekt, was in der Mission platziert wird (z.B. ein unsichtbares Helipad))

Code:
params
[
    ["_center",objNull,[objNull]]
];

_cPos = getPos _center;
_rDir = getDir _center;

_bottle = "Land_BottlePlastic_V2_F" createVehicle _cPos;
_bottle setDir +10 + _rDir;
_bottlePos = _center getRelPos [2,-100];
_bottle setPos _bottlePos;
mit _bottle setDir + 10 + _rDir dreht man die Flasche um die Rotation zurück, die man dann in der relativen Positionierung für die Richtung verwendet (schwer zu erklären).

mit _bottlePos = _center getRelPos [2,-100]; definiert man nun eine Position etwa 2 Meter entfernt vom _center (Objekt in der Mission) und in einem Winkel von 100° gegen den Uhrzeigersinn (also ca. 8:30 Uhr Position).

Terrain wird bei getRelPos mit einbezogen, die gespawnten Gegenstände richten sich also z.B. auch an einem Berghang halbwegs korrekt aus, ohne komisch in der Gegend herumzustehen (was bei ModelToWorld leider der Fall ist).

Falls ich das viel zu kompliziert mache und es einen einfachen Weg gibt, wäre ich happy, wenn mir das jemand schildern könnte. Momentan glaube ich, dass ich es mal wieder viel zu kompliziert mache
wolkenstuermer ist offline   Mit Zitat antworten
Alt 29.08.2017, 18:01   #4 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Pfandgiraffe
 
Registriert seit: 16.09.2008
Ort: Berlin
Alter: 31
Beiträge: 1.724
Pfandgiraffe eine Nachricht über ICQ schicken Pfandgiraffe eine Nachricht über Skype™ schicken
Standard

Damit kannst du eine Komposition als SQF erstellen.

Map Builder - Tools - Armaholic


Grüße
__________________
Niemand hat die Absicht eine Tüte zu bauen!
Pfandgiraffe ist offline   Mit Zitat antworten
Alt 15.09.2017, 17:17   #5 (permalink)
Newbie
 
Registriert seit: 08.08.2015
Beiträge: 36
Standard

Danke Pfandgiraffe, das werde ich mir definitiv mal anschauen!
wolkenstuermer ist offline   Mit Zitat antworten
Antwort

Stichworte
ausrichtung, mehrere objekte, vektoren


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Kontakt - HX3.de - Archiv - Nach oben

Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias



SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116