játékfejlesztés.hu
FórumGarázsprojectekCikkekSegédletekJf.hu versenyekKapcsolatokEgyebek
Legaktívabb fórumozók:
Asylum:    5462
FZoli:    4892
Kuz:    4455
gaborlabor:    4449
kicsy:    4304
TPG:    3402
monostoria:    3284
DMG:    3172
HomeGnome:    2919
Matzi:    2522

Pretender:    2498
szeki:    2440
Seeting:    2306
Geri:    2190
Orphy:    1893
Joga:    1791
Bacce:    1783
MaNiAc:    1735
ddbwo:    1654
syam:    1491
Frissebbek | Korábbi postok
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [15] [20] [25] [30] [35] [40] > 45 < [50] [55]
Viperion - Tag | 540 hsz       Online status #195774   2013.07.03 15:07 GMT+1 óra  
Most fákat nem talál vagy pedig nem húztál rá az egész terrain ra egy textúrát?

   
Trukkoshekus - Tag | 21 hsz       Online status #195772   2013.07.03 15:00 GMT+1 óra  
De hol találom a map editort? Mert meg van a terrain ha arra gondolsz de mikor fát szeretnék be tenni akkor nem talál semmilyen texturát..

   
Viperion - Tag | 540 hsz       Online status #195771   2013.07.03 14:40 GMT+1 óra  
Nem akar jó lenni sehogy.
Most meg az a baj,hogy ha még egyszer lenyomom az A betűt akkor már nem felé fog mozdulni hanem vissza a kezdő pontra,ezt értem is hogy miért van de,akkor sem jó pedig nem 0 kerül a rotateTo.y ba.
rotateTo = Quaternion.Euler(new Vector3(0, rotateTo.y + fok, 0));

Kód:
using UnityEngine;
using System.Collections;

public class EszrevettemValamitScript: MonoBehaviour
{

private Transform other; //Egy masik GameObject transform-ja
private Quaternion rotateTo; // Eddig lesz az elforgatas
private Vector3 kettoKoztiTavolsag; // Ket GameObject kozti tavolsag
private float fok, speed = 1.5f; // A fok es a forgatasi sebesseg


void Awake()
{
// GameObject keresese a hierarchy-bol
other = GameObject.Find("CylinderTwo").transform;
//Quaternio inicializalasa
rotateTo = Quaternion.identity;
}

void Update()
{
if(Input.GetKeyDown(KeyCode.A))
{
// A ket pont kozti tavolsag megszerzese
kettoKoztiTavolsag = other.transform.position - transform.position;
// A Vector3 normailizalasa
kettoKoztiTavolsag.Normalize();
// A ket GameObject Vectorai álltal bezárt szög koszinuszban
fok = Vector3.Dot(transform.forward, kettoKoztiTavolsag);
    //A koszinusz atvaltasa radianba,radianbol pedig szogre
fok = Mathf.Rad2Deg * Mathf.Acos(fok);
// Ha a fok tobb mint 180 akkor atforditjuk minuszba
if(other.position.x < 0)
fok = -fok;
rotateTo = Quaternion.Euler(new Vector3(0, rotateTo.y + fok, 0)); 
}

if(transform.rotation != rotateTo)
    // A GameObject elforgatasa eggyik fokbol a masikba megadott sebesseggel
    transform.rotation = Quaternion.Lerp(transform.rotation, rotateTo, speed * Time.deltaTime);
}

}

Ezt a hozzászólást Viperion módosította (2013.07.03 15:42 GMT+1 óra, ---)

   
LBandy - Tag | 271 hsz       Online status #195763   2013.07.03 07:28 GMT+1 óra  
180 fok fölött át kell fordítani, csapd át -180-ba és onnantól növelgesd megint.
   
Viperion - Tag | 540 hsz       Online status #195761   2013.07.03 04:15 GMT+1 óra  
Üdv.
Most az lenne a problémám,hogy ha 180 foknál nagyobb fokba van az a GameObject aminek transformját hozzárendelem az other változóhoz,akkor sajnos már nem működik jól ez a program.

Van egy olyan érzésem,hogy a Vector3.Dot() nem is arra van amire én most használom ebben a kódban.Hogyan kéne kijavítanom,hogy 180 foknál több esetében is működjön?

"Van egy olyan érzésem,hogy a Vector3.Dot() nem is arra van amire én most használom"
Ha ez igaz akkor mikor kell használni?Ahhoz sem kell Dot(),hogy megnézzem van e egy másik objekt mögöttem.Csak simán lekérem annak a másik objnak a koordinátáit és abból megtudom nem kel ehhez sem dot akkor mihez kell?


Kód:
public class EszrevettemValamitScript: MonoBehaviour
{

private Transform other; //Egy masik GameObject transform-ja
private Quaternion rotateTo; // Eddig lesz az elforgatas
private Vector3 kettoKoztiTavolsag; // Ket GameObject kozti tavolsag
private float fok, speed = 1.5f; // A fok es a forgatasi sebesseg


void Awake()
{
// GameObject keresese a hierarchy-bol
other = GameObject.Find("CylinderTwo").transform;
}

void Update()
{
if(Input.GetKeyDown(KeyCode.A))
{
// A ket pont kozti tavolsag megszerzese
kettoKoztiTavolsag = other.transform.position - transform.position;
// A Vector3 normailizalasa
kettoKoztiTavolsag.Normalize();
// A ket GameObject Vectorai álltal bezárt szög koszinuszban
fok = Vector3.Dot(transform.forward, kettoKoztiTavolsag);
// A koszinusz atvaltasa radianba,radianbol pedig szogre
fok = Mathf.Rad2Deg * Mathf.Acos(fok);
// Quaternio keszitese Vector3-bol
rotateTo = Quaternion.Euler(new Vector3(0, fok, 0));
}
// A GameObject elforgatasa eggyik fokbol a masikba megadott sebesseggel
transform.rotation = Quaternion.Lerp(transform.rotation, rotateTo, speed * Time.deltaTime);
}

}

   
LBandy - Tag | 271 hsz       Online status #195759   2013.07.02 22:45 GMT+1 óra  
Van Unity-ben egy elég korrekt 3D-s map editor, amiben tehetsz hegyeket, fákat, füvet, stb-t.
   
Pixi - Tag | 206 hsz       Online status #195758   2013.07.02 21:53 GMT+1 óra  
Spécibb elemekhez nem kell véletlenül valami külön program, mint a Blender vagy a 3ds max?

   
versio - Tag | 667 hsz       Online status #195754   2013.07.02 20:29 GMT+1 óra  
meg kell rajzolni
   
Trukkoshekus - Tag | 21 hsz       Online status #195753   2013.07.02 19:43 GMT+1 óra  
Még annyi kérdésem lenne azt igérem meg próbálok egyedül boldogulni..szerettem volna hegyeket fákat csinálni..a hegy az ment is..De nem tudom hogy lehet fákat,füvet meg ilyeneket..Kerestem de nem találtam.Azt külön le kell tölteni hozzá? Vagy ez hogy működik?

   
Trukkoshekus - Tag | 21 hsz       Online status #195751   2013.07.02 19:28 GMT+1 óra  
Ő meg találtam ami kellet köszi..

   
Trukkoshekus - Tag | 21 hsz       Online status #195749   2013.07.02 19:24 GMT+1 óra  
Ő meg is van fel is tettem..De nem találok hozzá serial-t .Vagy crackolni kéne? Ugy olvastam ez ingyenes..

   
Pixi - Tag | 206 hsz       Online status #195745   2013.07.02 17:24 GMT+1 óra  

   
Trukkoshekus - Tag | 21 hsz       Online status #195743   2013.07.02 17:11 GMT+1 óra  
Oké..és melyik unity-t töltsem le? Mert találtam egy pár letöltést..Ha tudnátok linket küldeni azt meg köszönném..

   
versio - Tag | 667 hsz       Online status #195742   2013.07.02 16:48 GMT+1 óra  
a script ugyanpolyan program , mint barmelyik , pl az engine, 3 ok miatt kell script

1. eleg gyakran kellene forditani a programunkat script nelkul , es a c++ fordito nem arrol hires hogy gyors lenne, a script nyelvek forditasi ideje 1-2 masodperc

2. a tartalom allando betoltogetese lassu folyamat, gondoljunk egy uj generacios xboxra 8 GB memoriaval, egy palya betoltese percekig tart

3. a script programozok altalaban gyengek programozasbol , es olcsobbak is, igy celszerubb ezek alkalmazasa
   
Trukkoshekus - Tag | 21 hsz       Online status #195741   2013.07.02 16:10 GMT+1 óra  
a scrip az animációhoz tartozik vagy az mit rejt magában?

   
Viperion - Tag | 540 hsz       Online status #195738   2013.07.02 12:33 GMT+1 óra  
Kezd el ha érdekel tanuld és majd ha oda érsz meglátod.
De unity ben animációkra is lehet scriptet írni biztos.Én még nem tudom,hogy van ez nem tartok még ott.

   
Trukkoshekus - Tag | 21 hsz       Online status #195734   2013.07.02 10:23 GMT+1 óra  
Huh hát köszönöm ezt a sok választ.Ha unity-val elkezdem csinálni a játékot akkor utána gondolom még meg kell írnom pl a karakterekre a mozgást meg az ilyeneket.Vagy azt is tudja ez a program?

   
M4 - Tag | 187 hsz       Online status #195732   2013.07.02 10:06 GMT+1 óra  
Idézet
Trukkoshekus :
Hali mindenkinek.Én nagyon új vagyok még ezekben a dolgokban nem rég keztem programozni de mint gondolom sok embernek nekem is eszembe jutott hogy írjak egy játékot.Na olyan kérdésem van hogy minek kell pl egy játékhoz motor? mért nem lehet pl meg írni c#-ba? Én nem értek hozzá de kérlek segítsetek.Milyen játék motor tanulásával kezdjem?Előre is köszi a választ és tényleg bocs ha hülyeséget kérdeztem.


Attól függ milyen a játék. Ha egyszerű, akkor biztos meg lehet oldani az alap könyvtárakkal. Én például nem szerettem volna használni külső könyvtárat, megoldottam volna a Canvas osztállyal. De olyan játékot találtunk ki, amiben elforgatva kell kirajzolni a képeket, az viszont lassú lett volna Canvas-sal. Nem akartam opengl-lel foglalkozni, ezért kerestem könyvtárat. Egy másik pozitívuma a játékmotoroknak, hogy kijavíthatják a beépített függvények hibáit, pl android-os opengl-es bug-okat.
A legjobb az lenne, ha minden funkcióhoz külön library-t használnánk, csak annak az a hátránya, hogy nekünk kell azokat összehangolni. De ha egy űberengine-t használunk, akkor a legtöbb funkciója kihasználatlan, mégis oda kell csatolnunk a játékunkhoz.

Szóval a bugok meg az opengl miatt. Ha webre fejlesztesz akkor meg a kompatibilitási problémák miatt is.
Ja igen, a játékmotor platformfüggetlenebbé is teheti a játékot.

   
versio - Tag | 667 hsz       Online status #195727   2013.07.02 00:45 GMT+1 óra  
ez az eroforras eloszlas ablak igy jatek kozben nem egy rossz dolog

   
Viperion - Tag | 540 hsz       Online status #195726   2013.07.01 23:31 GMT+1 óra  
Kezdem már érteni a Vector3.dot()-ot.
Tehát ha a dot 1 ad ki ez azt jelenti,hogy az objektum előttem van.Ha -1 akkor a hátam mögött és -1 csakis pont 180 esetében kaphatok az az a hátam mögött lesz az objektum ez esetben.

Talán jó ez a dot arra,hogy az egyik objektumtól bemérjünk egy másikat.
valami ilyesmire gondoltam.

Köszönök minden segítséget.

   
ddbwo - Tag | 1654 hsz       Online status #195725   2013.07.01 23:18 GMT+1 óra  
Egy játékhoz sok minden kellhet. Grafika + időzítők, események + objektum kezelő cuccok + input + játéklogikák + esetleg ai. + fizika (minimális vagy teljes), több-kevesebb matematika és térgeometria + hang kezelés, hálózat kezelés. És ezek összehangolása teljesítmény arányosan.

És ezekből kéne a játék igényéhez gyúrni egy alapot. Minden téma lehet valamivel egyszerűbb és jóval összetettebb is.
A Half-Life 2: Deathmatch promóció megszűnt! [B¤°
Kezdetben volék az üresség. Ám akkor a Struktúrfüggöny megteremté az Urat.
DrunkenDragon* Blackwolf
   
Viperion - Tag | 540 hsz       Online status #195724   2013.07.01 23:14 GMT+1 óra  
Azért kell a játékokhoz egy kész programot használni amiben lehet scriptelni is,hogy neked és a játék készítőknek ne kelljen minden egyes játéknál a nulláról leprogramozniuk a fényeket az árnyékot stb.

Ezek kész vannak már a programban és lehet módosítani rajtuk a programban és scriptel is.
Szerintem ezért de majd valami hozzáértőbb leírja.

   
Trukkoshekus - Tag | 21 hsz       Online status #195722   2013.07.01 23:05 GMT+1 óra  
Hali mindenkinek.Én nagyon új vagyok még ezekben a dolgokban nem rég keztem programozni de mint gondolom sok embernek nekem is eszembe jutott hogy írjak egy játékot.Na olyan kérdésem van hogy minek kell pl egy játékhoz motor? mért nem lehet pl meg írni c#-ba? Én nem értek hozzá de kérlek segítsetek.Milyen játék motor tanulásával kezdjem?Előre is köszi a választ és tényleg bocs ha hülyeséget kérdeztem.

   
ddbwo - Tag | 1654 hsz       Online status #195721   2013.07.01 23:00 GMT+1 óra  
Iskolában simán függvény táblázattal, amúgy meg számológéppel.

pl.: beírod számológépbe, hogy: 45, cos, =
és akkor kiírja, hogy 0,70710678118654
Ez a 45 fok koszinusza. Akkor ha tudni szeretnéd, hogy melyik szögnek a koszinusza a
0,70710678118654, beírod, hogy Inv, cos. És akkor kiírja, hogy 45.

a Dot() két vektor közt a koszinusz. Amihez tartozik egy szög. Ennél nem kell tovább kombinálni suliban sem.
az acos() jelenti az inv cos-t.

Matekban háromszögekkel is lehetett számolgatni. egyik oldal per másik, szinusz per koszinusz, meg ilyenek. És kijött a háromszög minden oldala és szöge. A két vektor olyan, mint a háromszög két oldala, ami egy pontból indul ki.
A Half-Life 2: Deathmatch promóció megszűnt! [B¤°
Kezdetben volék az üresség. Ám akkor a Struktúrfüggöny megteremté az Urat.
DrunkenDragon* Blackwolf
   
Viperion - Tag | 540 hsz       Online status #195720   2013.07.01 22:48 GMT+1 óra  
Én teljesen kivagyok a matektól és nem megy. És pont ez miatt utáltam meg.Egy ideig tanultam de semmi hasznom és + tudást nem tudtam felszedni hiába volt a kitartásom egy ideig törhetetlen azzal,hogy bele törődtem abba ,hogy a fejlődésem olyan kis méretű,hogy nem érte meg a további időt és erőfeszítéseket.

Egyetlen számból megkapni egy szöget nem értem,hogy lehetséges.

   
versio - Tag | 667 hsz       Online status #195719   2013.07.01 22:44 GMT+1 óra  
ha a vektorialis szorzat nem megy akkor ideje beiratkozni egy kozepsuliba
vagy valasztani egy nem a matekra epulo szakmat, pl grafikus
   
ddbwo - Tag | 1654 hsz       Online status #195718   2013.07.01 22:41 GMT+1 óra  
Amit szoktam említeni, az az aknakereső. Ha autómatikusan csinálod, minél gyorsabban, akkor elvileg javulnak az ilyen készségek. Régen, mikor elromlott a grafkártya, zene mellett aknakeresőztem. Úgy éreztem, hogy az csak hat valamire...

Meg a sok pörgős fps, civ4, NFS:MW... Gyúrni kell a skill-eket. xD
Elvileg még számít a vitamin, magnézium, hal, banán, ásványvíz, mozgás, vérkeringés. Ilyen általános dolgok...
---

A koszinusz csak egy szám. Amiből meg lehet kapni egy szöget. Csak temp érték.
A Half-Life 2: Deathmatch promóció megszűnt! [B¤°
Kezdetben volék az üresség. Ám akkor a Struktúrfüggöny megteremté az Urat.
DrunkenDragon* Blackwolf
   
Viperion - Tag | 540 hsz       Online status #195717   2013.07.01 22:40 GMT+1 óra  
A koszinusz tétellel mit kapok eredményül mire jó?

   
ddbwo - Tag | 1654 hsz       Online status #195716   2013.07.01 22:32 GMT+1 óra  
Én leginkább képekben gondolkodok, meg tanulok. Vagyis megfigyelek, mert gyorsan rögzülnek dolgok. Vagy fejben is "át tudok szimulálni" eseményeket. Mint valami rövid videó, levezetem mi történne. Ilyen ronda hosszú oldalakat sose néztem, mint amit versio linkelt.

Ha értem, már le is tudom szöveggel írni pontosan. Nem tudok trükköt mondani. Vagy hogy lehet-e egyszerűbben.
De pl a Dot() az csak egy képlet, érteni nem kell feltétlen. Meg is tanulható Azon kívül a koszinusz. Mivel trigonometria megmaradt a fejemben, így fel is tudom használni. A matematikai kombinálás, képlet egyszerűsítés, meg ilyesmik az matematika. Nincs mit tenni, a matek érzékeden kell javítani.

A játékfejlesztésnek több része van, nem sokan kezdenek foglalkozni a háttér dolgokkal. Leginkább a játék elkészülésére kell koncentrálni.
A Half-Life 2: Deathmatch promóció megszűnt! [B¤°
Kezdetben volék az üresség. Ám akkor a Struktúrfüggöny megteremté az Urat.
DrunkenDragon* Blackwolf
   
Viperion - Tag | 540 hsz       Online status #195715   2013.07.01 22:21 GMT+1 óra  
Miért vagyok én ilyen? Miért nem lehet okos,olyan akinek vág az agya?

Ha tisztában vagyok azzal,hogy valamit,hogyan kell alkalmazni akkor is nehezen megy.
Például tudom hogyan kell összeadni és még vannak számok amiket nagyon nehéz összeadnom vagyis sikerül elvégeznem fejben az összeadást csak nagyon lassan olyan lassan,hogy másnak az már feltűnne,hogy én nem tudok összeadni pedig tudok csak sok időt vesz igénybe .

Mi az a Koszinusz megnéztem itt de nem értem:
http://hu.wikipedia.org/wiki/Koszinuszt%C3%A9tel

Ezt a hozzászólást Viperion módosította (2013.07.01 22:32 GMT+1 óra, ---)

   
Viperion - Tag | 540 hsz       Online status #195714   2013.07.01 22:05 GMT+1 óra  
És ha ebből sem értek semmit akkor ezt én,hogy tudnám megtanulni?Hogyan tanuljam meg?

   
versio - Tag | 667 hsz       Online status #195712   2013.07.01 21:57 GMT+1 óra  
Viperion - Tag | 540 hsz       Online status #195708   2013.07.01 21:37 GMT+1 óra  
ddbwo amit írtál nekem a dot() függvénnyel kapcsolatos kérédsemre abból semmit nem értek olyan mintha kínaiul lenne.Egyáltalán nem értem a matek részét anna amit írtál.

Egyébként köszi tudom,hgogy én vagyok a buta.
Úgy tűnik én szenvedésre és nyomorúságra vagyok ítélve kösz fortuna és sors a szar agyamat amit adtatok.

   
versio - Tag | 667 hsz       Online status #195704   2013.07.01 20:48 GMT+1 óra  
a directx-es enginem is c# scriptes, amugyis a gpu terhelodik egyelore
   
ddbwo - Tag | 1654 hsz       Online status #195690   2013.07.01 19:13 GMT+1 óra  
Úgy tűnik a C# még fejlesztésre szorul.
A Half-Life 2: Deathmatch promóció megszűnt! [B¤°
Kezdetben volék az üresség. Ám akkor a Struktúrfüggöny megteremté az Urat.
DrunkenDragon* Blackwolf
   
versio - Tag | 667 hsz       Online status #195687   2013.07.01 19:06 GMT+1 óra  
az unity ugyanazon a gepen, ugyanazzal a graffal 3-szor lassabb mint a sajat directx-es enginem, 60 fps helyett van 20
persze lehet rajta meg tutujgatni, mondjuk ujra kell irnom az osszes shadert, az altalanos megoldasok ugy nez ki nem kicsit lassuak
   
ddbwo - Tag | 1654 hsz       Online status #195683   2013.07.01 18:54 GMT+1 óra  
Viszont azt hiszem ezt keresed...

"unity angle between two vectors"

Kód:
Vector3.Angle( Vector3, Vector3 );
A Half-Life 2: Deathmatch promóció megszűnt! [B¤°
Kezdetben volék az üresség. Ám akkor a Struktúrfüggöny megteremté az Urat.
DrunkenDragon* Blackwolf
   
ddbwo - Tag | 1654 hsz       Online status #195681   2013.07.01 18:44 GMT+1 óra  
Két vektor dot productja a két vektor által bezárt szög koszinuszával egyenlő. Ez 1 és -1 közé fog esni, 0 fok 1, 180 fok -1, mivel egyik vector a másikhoz képest valamelyik irányból legfeljebb 180 fokban állhat. A koszinus görbéje nem egyenesen arányos, és térben ez a legrövidebb utat jelenti. A vektorokat normalizálni(!) kell, ha nem egységhosszúak eleve.

A koszinusznak kell egy acos() függvény, amivel megkaphatod a szöget is. Viszont azt radiánban a radiánt át lehet váltani fokba. de a gépnek mindegy hogyan dolgozik vele. Kivéve, ha szögben kéri a függvény.

Ezzel leggyakrabban azt szokták nézni, hogy valami háttal van-e másnak. De számos felhasználása van térmatekban.

Ha ezzel szeretnéd megkapni a forgást, akkor több ponton is rontja a teljesítményt.
A Half-Life 2: Deathmatch promóció megszűnt! [B¤°
Kezdetben volék az üresség. Ám akkor a Struktúrfüggöny megteremté az Urat.
DrunkenDragon* Blackwolf
   
Viperion - Tag | 540 hsz       Online status #195662   2013.07.01 00:37 GMT+1 óra  
Köszi. Akkor nem foglalkozok ezzel használom a beépített optimalizált módszereket.
Még lenne egy kérdésem. Nem sikerült megértenem a dokumentációból,hogy mire jó a Vector3.Dot().
Persza majd ha csak lesz rá időd és rá is érsz.

   
ddbwo - Tag | 1654 hsz       Online status #195661   2013.06.30 23:41 GMT+1 óra  
Egy olyasmi infó maradt ki, hogy mondták, hogy van az axis. A forgás tengelye. Ez olyan, mint a kocsi kerekének a tengelye, ami körül forog a kerék. Ha a tengely negatív, akkor a forgás iránya fordított.
A forgás sebessége vsz a tengely hossza. Vagyis

Kód:
forgVec = normalize(axisEnd - axisStart) * sebesseg

ez két pont közt a forgástengely. Normalizálni akkor kell, ha a tengely hossza nem 1.

u.i.: pontosan nem tudom hogy van Unity-ben a normalize (talán nagy betű??).
---

Amúgy pontosan ez az a dolog, amit említettem korábban is. Nem kell minden kis részletet ismerni, vagy leakadni rajta. Csak használd fel, ami van. Szépen összedolgozták a unity matek és program háttérét, fel kell fedezni és kombinálni.

u.i.2:
de ugyanígy felhasználható a fenti képlet irányként sebesség nélkül, vagy elmozdulásként sebességgel.
A Half-Life 2: Deathmatch promóció megszűnt! [B¤°
Kezdetben volék az üresség. Ám akkor a Struktúrfüggöny megteremté az Urat.
DrunkenDragon* Blackwolf
   
ddbwo - Tag | 1654 hsz       Online status #195660   2013.06.30 23:28 GMT+1 óra  
Erre azért vannak meg a függvények, mert mátrix szinten kellene őket optimalizálni. Vsz. azokban szépen megcsinálták. Ha magadnak szeretnéd elintézni, akkor a forgatás mátrixát és egy tört eltolás mátrixot kéne előkombinálni.
Ami így csúnyán hangzik, ha nem vagy mélyen benne, akkor az is. Amúgy gyakorlatilag csak táblázatokat kell összevetni szinte.

A másik módszer a quaterniós, ami megint "csúnya" lenne így hírtelen.

Ha rám hallgatsz, ezeket használod, amik vannak, mert eleve optimalizált. Ezeknek nem kell a mélyére látni, csak ügyesen kombinálni, felhasználni. Ezzel kímélnek meg a mély matektól.
---

u.i.:
Ráadásul a végére épp ugyanezeket kapnád meg, és a háttere is ugyanúgy jönne ki vsz..
A Half-Life 2: Deathmatch promóció megszűnt! [B¤°
Kezdetben volék az üresség. Ám akkor a Struktúrfüggöny megteremté az Urat.
DrunkenDragon* Blackwolf
   
Viperion - Tag | 540 hsz       Online status #195659   2013.06.30 23:15 GMT+1 óra  
Azt akarom,hogy egy létrehozott gameobject körül keringjen egy másik.
Az a agmeObject amellyik kering,az mindig nézzen az felé ami körül kering.
Például:
Van egy Sphere objektem ezt elnevezem napnak.
És van egy másik ezt pedig elnevezem föld nek.
A föld keringjen a nap körül de úgy,hogy a földnek állandóan csak az egyik oldalát világítsa meg a nap.Az az a földet be kell forgatni mindig a nap felé ahogy kering körülötte.Ezt a lookAt simán megoldja.

A nap nem foroghat és álló helyzetben kell lennie.

Ezt akarom megcsinálni de beépített függvény nélkül.
Ez azt jelnti,hogy nem használható a rotateAround,lookAt, stb.

Én akarok megvalósítani egy ilyen függvényt. Azt akarom,hogy hasonló legyen mint a rotateAround(). ugyanazokat a paramétereket várja bemenőnek a megvalósított függvény mint a rotateAround() csak annyit szeretnék még változtatni ezen,hogy a mi függvényünk várjon egy negyedik paramétert is ami megmondja,hogy lokális vagy világ tér szerint forgassa,mozgassa a földet.

Ezen törtem magam egész délelőtt.

   
ddbwo - Tag | 1654 hsz       Online status #195658   2013.06.30 22:40 GMT+1 óra  
Én csak azért nem válaszoltam, mert nem is olvastam a topicban. Mostanában átszerveződött az érdeklődés, ami miatt a látogatott topikok is.

Egész pontosan mit szeretnél elérni?

Itt látom hogy valami körül forogjon, haladjon, meg forduljon egy bizonyos irányba. Pontosan minek kéne történnie? A pontos jelenet érdekelne, mert az utóbbi túl összetettnek tűnik, amit csak speciális esetben használna ki.
A Half-Life 2: Deathmatch promóció megszűnt! [B¤°
Kezdetben volék az üresség. Ám akkor a Struktúrfüggöny megteremté az Urat.
DrunkenDragon* Blackwolf
   
Viperion - Tag | 540 hsz       Online status #195657   2013.06.30 21:47 GMT+1 óra  
Én a nyelvi elemekkel tisztában vagyok olyan szinten,hogy tudjam az,hogy ez egy függvény ez változó,feltételvizsgálat,metódus öröklődés,sablonok stb tisztában vagyok ezekkel a dolgokkal.

Én megtudtam csinálni azt,hogy egy objektet forgassak egy másik körül megtudtam csinálni egy beépített metódussal.

Megmondom mit nem tudok.
Nem tudok bonyolultabb,nagyobb összetettebb algoritmusokat írni mert nem nagy az iq szintem.
Átlag aluli egyébként,amúgy meg mindig is rosszul ment nekem a matek.

Ha arra kérnétek,hogy hagyjam a programozás sőt az egész informatikát akkor ezzel kitépnétek belőlem egy darabot.Sosem fogok tudni leszállni az info ról.

Amikor feltettem a kérdésemet nem arra az egy metódusos megoldásra gondoltam nem ezt akartam válaszként kapni: RotateAround()

Én saját magam akarok írni egy RotateAround függvényt ezt akartam valójában csak rosszul fejeztem ki magamat.

Egyébként szörnyen rosszul érzem magamat az miatt,hogy nem sikerült ez nekem.Ma délután egy papírt fogva törtem a fejemet azon,hogy hogyan csinálhatnám meg és nagyon elkeseredtem mert nem jutottam vele semmire.és nem azért mert a nyelvi elemek megértésének hiánya miatt nem sikerült hanem azért mert buta vagyok ahhoz,hogy kitaláljam a matek részét.

Egy négy paramétert váró függvényt akartam írni.
Első paraméterként kapja meg annak az objektumnak a transform.position(Vector3) ami körül keringenie kell.

Második paraméterként pedig szintén egy Vector3 várjon ezzel megadható lesz a keringési irány.

Harmadik paraméterként pedig várjon egy lebegőpontos értéket ezzel a keringési sebességért felelne.

A negyedik paraméternek pedig meglehessen adni,hogy lokális tér szerint forgassa a keringő objektumot vagy globális tér szerint.

Ezen törtem a fejemet képzeljétek egész délután és komolyan nem a nyelvi elemek ismeretének hiánya volt a gond hanem az,hogy buta vagyok. ez miatt nem tudtam kitalálni a megvalósítást.Mert ugye csakis az után lehetne kódba önteni bármit is ha először kitaláltuk.

Próbáljatok segíteni vagy mondjátok mit tegyek.

   
LBandy - Tag | 271 hsz       Online status #195654   2013.06.30 21:23 GMT+1 óra  
Tudom, dolgoztam vele főállásban. Nem volt olyan kérdés, amit ne tettek volna már fel előttem és ne találtam volna meg percek alatt. Szóval megtanulni borzasztóan könnyen lehet, ha valakinek van rá hajlama és hajlandósága.
   
versio - Tag | 667 hsz       Online status #195644   2013.06.30 19:05 GMT+1 óra  
LBandy: azert jo az unity mert rendkivul nagy user bazissal rendelkezik , a googleval csak jol kell kerdezni es mindenre valaszt kap az ember
   
LBandy - Tag | 271 hsz       Online status #195643   2013.06.30 18:46 GMT+1 óra  
versio, ha megfigyeled Viperion itteni pályafutását, az elején jó néhányan mondtuk neki, hogy kezdjen el utánaolvasni dolgoknak és ne csak kapkodjon meg kódokat másolgasson gondolkodás nélkül mindenfelől. Lassan elfogynak azok, akik válaszolnak neki totál fölöslegesen, és akkor majd elkezd ténylegesen tanulni. Vagy abbahagyja a programozást...
   
versio - Tag | 667 hsz       Online status #195630   2013.06.30 15:52 GMT+1 óra  
Viperion: igy kurva kinkeserves lesz , ha az alapokkal sem vagy tisztaban

nyilvan egy position2-position1 megadja a vectort, a lookAt meg elforditja a bazisvectoroknak megfeleloen, vagy a 2-vel elobb linkelt quaternios is elforditja csak lepesekben , rafordul..
   
Viperion - Tag | 540 hsz       Online status #195623   2013.06.30 15:21 GMT+1 óra  
Így sikerült megoldani de szerintem ez túl költséges:

Kód:
using UnityEngine;
using System.Collections;

public class RotateScript : MonoBehaviour {

private Transform sunTransform;

// Use this for initialization
void Start () {
    sunTransform = GameObject.Find("Sun").transform;

}

// Update is called once per frame
void Update () {
transform.Translate(0, 2 * Time.deltaTime, 0, Space.Self);
transform.LookAt(sunTransform, transform.TransformDirection(Vector3.up));
//transform.Rotate(20 * Time.deltaTime, 0, 0);
}
}


Matekkal,hogyan számolhatom meg azt az értéket amit ha beírok majd a transform.Rotate() ba akkor pontosan a középpont felé fordítsa az objektumomat?

És akkor:
void Update() {
transform.translate(0, 2 * Time.deltaTime, 0, Space.Self);
//matek rész.
transform.Rotate(kapott eredmény ami az objektum1 felé forgatja az objektum2 őt. );
}

   
Viperion - Tag | 540 hsz       Online status #195616   2013.06.30 14:36 GMT+1 óra  
Így is tudtam szépen forgatni körülötte:
transform.Translate(2 * Time.deltaTime, 0, 0, Space.Self);
transform.LookAt(sunTransform.position);

De így már nem jó:
transform.Translate(0, 2 * Time.deltaTime, 0, Space.Self);
transform.LookAt(sunTransform.position);

Miért akad meg a második esetben 90 foknál?

   
Frissebbek | Korábbi postok
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [15] [20] [25] [30] [35] [40] > 45 < [50] [55]