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

Pretender:    2498
szeki:    2440
Seeting:    2306
Geri:    2188
Orphy:    1893
Joga:    1791
Bacce:    1783
MaNiAc:    1735
ddbwo:    1625
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]
ddbwo - Tag | 1625 hsz       Online status #196737   2013.08.13 20:34 GMT+1 óra  
Pedig hogy felmondanék időnként egy Edward királyt a bablevesbe vagy Babitsot a ... bablevesbe. Sőt, munkába menet lehet ismételgetni, hogy "Stefan geht jeden Tag zu Fuß zur Schule".
Ezek az élmények mind kimaradnak az életemből...
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
   
Lord_Crusare - Törzstag | 1290 hsz       Online status #196735   2013.08.13 20:18 GMT+1 óra  
"Nem tanultam valami sokat, inkább kitöltöttem a rést."

Igen, ez szerintem feltűnt mindenkinek.

   
ddbwo - Tag | 1625 hsz       Online status #196734   2013.08.13 20:02 GMT+1 óra  
pontok súlya.
Mivel ha több pont lenne, minden pont eltolná a súlypontot.

De attól még a többi is igaz. Általánosból éppen szövegekre nem fogok emlékezni. Nem tanultam valami sokat, inkább kitöltöttem a rést.

Annyi megmaradt, hogy Stefan geht jeden Tag zu Fuß zur Schule. Mert ezt bukás ellen meg kellett tanulnom. Működött is a memória blokk vagy fél napig. De az első sor azért ütős volt.
De ez off téma lett volna...
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
   
DMG - Szerkesztő | 3172 hsz       Online status #196733   2013.08.13 19:55 GMT+1 óra  
Nem, nem a pont súlya, hanem a háromszög súly pontja, vagyis az a pont, amin ha teszem azt egy háromszöget egy hurkapálcikára raksz, akkor egyensúlyban marad (ha már a közérthetőség a lényeg). Ami meg egyébként a szögfelezők metszéspontja. Általánosban tanítják.
-----------------------------------------
Dont Listen to the Naysayers
   
ddbwo - Tag | 1625 hsz       Online status #196732   2013.08.13 19:42 GMT+1 óra  
Lol Így a legkönnyebb befogadni. A középpontnak nem középpont, hanem súlypont.

Súly + pont, a pontok súlya.
---

Egyszerűbben megfogalmazva a háromszög összes pontjának átlaga.

Ezt a hozzászólást ddbwo módosította (2013.08.13 19:47 GMT+1 óra, ---)
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
   
DMG - Szerkesztő | 3172 hsz       Online status #196730   2013.08.13 19:39 GMT+1 óra  
Idézet
ddbwo :
A sulyPont egy pont lesz a háromszögön belűl, ami nagyjából középre esik.




Na akkor ez a topic is megy a levesbe.
-----------------------------------------
Dont Listen to the Naysayers
   
ddbwo - Tag | 1625 hsz       Online status #196728   2013.08.13 19:27 GMT+1 óra  
ddbwo labda

Remélem nem vírusos, de mióta van NET, ki tudja... Jobb félni.
2503-gya.zip - NEM junitis

NYILAK - mozgat labdát
JOBB / BAL KLIKK - közelít távolít labdát
INSERT - wireframe
DELETE - fill

BACKSPACE - vissza telíti a táblát
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 | 1625 hsz       Online status #196724   2013.08.13 19:11 GMT+1 óra  
Megcsinálom gyorsan egy exe-be, hogy biztos érthető legyen mi lenne a legelső eredmény...
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 | 1625 hsz       Online status #196720   2013.08.13 17:04 GMT+1 óra  
Szóval úgy képzeltem el, hogy beírod unitybe ezeket a lenti dolgokat. Abból látod, hogy mi történik. Akkor lenne egy közelítő képleted. Aztán kicserélnénk a pontos gömbökre. Ami hosszabbá tenné a scriptet.

Akkor lenne egy bogyó alapú ütköztetőd (xD) és alakulnának a lyukak... De ez még mindig jóval rövidebb, mint a kockás darabolós...
---

u.i.: De mindenek előtt kezdetnek csináld meg a háromszögekből a nagy mesht. Tehát olyan 50*50 négyzetet helyezz le scripttel. Egy négyzet mérete 1*1 legyen.
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 | 1625 hsz       Online status #196719   2013.08.13 16:55 GMT+1 óra  
Konkrét collider háló nehezebb lenne, mint gömbre egyszerűsíteni minden háromszög ütközését. Először látnod kéne, hogy mi történik.

Az alap unity engine-el is megoldhatod, ha a bontott négyszög lapok az engine-en belül keresik a labdával való ütközést...
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 #196718   2013.08.13 16:51 GMT+1 óra  
Egyébként lehetne hozzá saját collider hálót írni ugye?
Minden háromszögnek sajátot és ha ütközik az a háromszög a gömb colliderrel akkor törölni azt a háromszöget.

Vagy felhasználni az OnCollisionEntert És valahogy megvizsgálni ebben, a metódusban,hogy melyik három vertex közé esett a gömb és azokat törölni.

Mi a véleményed?

Ezt a hozzászólást Viperion módosította (2013.08.13 16:57 GMT+1 óra, ---)

   
ddbwo - Tag | 1625 hsz       Online status #196717   2013.08.13 16:50 GMT+1 óra  
Pár lépcsős. Azért javasoltam gömbökkel, mert az hamarabb átmegy, meg így az algoritmus szemléleten is felszedhetsz valamit, mielőtt hirtelen felindulásból elküldeném vágósíkokkal a megoldást.
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 #196716   2013.08.13 16:40 GMT+1 óra  
Így már értem.
Nem gondoltam volna hogy ennyire bonyolult lesz.
De biztos csak én vagyok buta.

   
ddbwo - Tag | 1625 hsz       Online status #196715   2013.08.13 16:34 GMT+1 óra  
Nem. Éppen a képletben számolnánk saját collider félét...
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 #196714   2013.08.13 16:32 GMT+1 óra  
Akkor külön collider hálót is létre kell hoznom a háromszögeknek?

   
ddbwo - Tag | 1625 hsz       Online status #196713   2013.08.13 16:25 GMT+1 óra  
A vertexek (vagyis a háromszög) köré lehetne rajzolni egy gömböt képzeletben. Tehát magába foglalja az alakzatot.

Ezt a gömböt a középpontról kellene amúgy számolni, de az is egy kicsit hosszabb képlet lenne. A súlypont kiszámolásával megkapod, hogy honnan induljon ez a majdnem pontos gömb. Ez lesz a képzeletbeli collidere a háromszögnek.

Megkapjuk hol van, de meg kell kapnunk, hogy a vertexek milyen messze vannak tőle. Az egyszerűség kedvéért itt véletlenszerűen ráböktem egyre. Megkapjuk a collider gömb sugarának a hosszát

(de nem pontosan, csak nagyjából)

Tehát lesz egy rövid életű "collider"-ed.
---

u.i.: Négyszögeknél pontos.
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 #196712   2013.08.13 16:18 GMT+1 óra  
Értem már csak ez nem tiszta.
"A befoglalógömb itt csak majdnem befoglalógömb lenne. Az egy olyan gömb, amibe a cucc matematikailag benne van."
length(v0 - s0)

Én ebből egyáltalán nem tudok felfogni semmit.

Mi az a befoglalógömb itt miről beszélsz?

s0 = (v0+v1+v2) * 0.333333f Ezt már értem.
length(v0 - s0) Ezt már nem mi ez?

   
ddbwo - Tag | 1625 hsz       Online status #196711   2013.08.13 16:09 GMT+1 óra  
A sulyPont egy pont lesz a háromszögön belűl, ami nagyjából középre esik. A három vertex átlaga. Azért kell összeadni őket és osztani hárommal. De az osztás lassú. Ezért a reciprokával szoroztam.

A befoglalógömb itt csak majdnem befoglalógömb lenne. Az egy olyan gömb, amibe a cucc matematikailag benne van. (itt csak kb).

A súlypont a vertexek súlypontja.

Kód:
gyok2 = sqrt(2.0);

teljesítmény javítás... Megnézed mennyi és azt a számot írod be 6 tizedes jegyig.
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 #196710   2013.08.13 15:37 GMT+1 óra  
Nem értem ezt:
s0 = (v0+v1+v2) * 0.333333f itt mi az a 0.3??? Mit valósít meg ez a képlet?

A szögek súlypontja mindig a szögek középpontja?
például a négyzetnek,háromszögnek vagy egyéb szögeknek a súlypontjaik a nem más mint a szögek középpontjai?

Gyök_kettő alatt meg ezt érted: sqrt(2) ????

"A háromszög befoglaló gömbjének sugara pedig"
Ez nekem értelmetlen mondatnak tűnik,hogy van ez? A háromszög befoglaló gömbjének ez mit jelent?

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

   
Viperion - Tag | 540 hsz       Online status #196706   2013.08.13 15:09 GMT+1 óra  
Tudom mi az a gyök. Csak a súlypontot nem tudom.
Nem értem ezt:
s0 = (v0+v1+v2) * 0.333333f itt mi az a 0.3???

Meg azt nem értem ezen kívül,hogy mi ez:
"a négyszög sugara a négyszög_mérete_fele*gyök_kettő. " Itt a végét nem értem mi az a gyok_kettő?

Talán a gyöknek van két verziója?

Például 9 nek 3 a gyöke mert 3*3 az 9 de mi az a gyok_kettő?

   
DMG - Szerkesztő | 3172 hsz       Online status #196703   2013.08.13 14:45 GMT+1 óra  
Bocs, de ha alapvető matematikai fogalmakat, mint a gyök, vagy a súlypont, nem tudod, akkor mit vársz tőlünk? Kezdjük a szorzótáblától vagy mi?
-----------------------------------------
Dont Listen to the Naysayers
   
Lord_Crusare - Törzstag | 1290 hsz       Online status #196702   2013.08.13 14:45 GMT+1 óra  
"Vak vezet világtalant"

   
Viperion - Tag | 540 hsz       Online status #196700   2013.08.13 14:17 GMT+1 óra  
Ezt túl nehéz.
Nem értem a matek részt már megint.
Még mindig nem tudom mit értesz súlypont alatt.
És itt miért pont : 0.333333 van?
"s0 = (v0+v1+v2) * 0.333333f"

És ezt a mondatot sem értem:
"a négyszög sugara a négyszög_mérete_fele*gyök_kettő."
Tehát a négyszög sugara az a négyszög méretének a fele megszorozva a mivel?Mi az a gyök_kettő

Ezt pedig egyáltalán nem értem.
"Távolság helyett távolságnégyzettel lehet spórolni. Ilyenkor értelemszerűen a sugarat sugárnégyzetben kell számolni." Ezek mik: távolságnégyzettel,sugárnégyzetben.

Miért vagyok ilyen ostoba.

   
ddbwo - Tag | 1625 hsz       Online status #196691   2013.08.13 09:01 GMT+1 óra  
Ja nem muszáj 128, csak véletlen egy 2 hatvány jutott eszembe. Lehetne 50*50 is, Minél többet raksz be, annál lassabb lesz.
Igen, álljon kis négyszögekből a mesh. Azt a lenti kettőzött for-al is meg lehet oldani.

A lövedéked egy labda lenne. Ennek a mérete akkora legyen, hogy valahányszor beleférjen a nagy lapba. Tehát ha 50 darab lap lesz, akkor mondjuk legyen 5-ös méretű a labda.

Ehhez nem kéne a mesh sem, elég lenne scripttel létrehozni lapokat, de algo gyakorlásnak jobb az is.

Szóval ha a négyzeteket felépítő kis háromszögeket veszed alapnak, akkor az azt felépítő háromszögeket számolhatnád. Ha lapokat veszel alapnak, akkor a lapok pozícióját.

1. Háromszögek esetében a súlypont (vertexeké)
Kód:
s0 = (v0+v1+v2) * 0.333333f
. A háromszög befoglaló gömbjének sugara pedig
Kód:
length(v0 - s0)
. Tehát a hossza. A labda sugarának hossza ismert a létrehozásából. Ha a háromszög súlypontja és a labda középpontja közti távolság kisebb a két sugár összegénél, akkor ütköztek. Tehát a mesh-ből ki kell törölni a három indexet. A tényleges vertexet nem kell.
Kód:
if( length( triSuly - labdaPos) <= labdaSugar + triSugar )

Ezt három indexenként végig loop-olva kellene ellenőrizni.

Ezt a menetet alaposan végig kell követned a scriptekben és megoldani az adatokban való turkálást, háromszögek vertexeinek a hármas csoportját, stb.
---

2. Megoldásnál a mesh pepecselést elfelejthetnéd. Minden négyzet külön objektum lenne, a súlypont a négyszög pozíciója, a négyszög sugara a négyszög_mérete_fele*gyök_kettő. //jav.//
Kód:
if( length( lapPos - labdaPos) <= labdaSugar + lapSugar )

Ehhez a lap gameobjekteket úgy kéne lehelyezned, hogy szintén 50*50-es lapot alkosson.
---

Távolság helyett távolságnégyzettel lehet spórolni. Ilyenkor értelemszerűen a sugarat sugárnégyzetben kell számolni.
---
Ezek általánosan hasznos és a legegyszerűbb logikák játékokhoz. Persze minőségben nem a legpontosabb.

Ezt a hozzászólást ddbwo módosította (2013.08.13 10:03 GMT+1 óra, ---)
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 #196689   2013.08.13 00:58 GMT+1 óra  
"csinálj egy 128*128 bontású lapot ezekből a négyszögekből "
Ez alatt azt érted,hogy csináljak egy olyan lapot ami 128*128 db négyszögből áll?
És milyen nagyok legyenek a négyszögek?

"és a gömbödet mérd a kis háromszögek súlypontjához"
Ezt egyáltalán nem értem.
Egy háromszögnek mi a súlypontja? És mérjem hozzá de hogyan? Nemtudom mi az a súlypont.

Elmagyaráznád légyszi.

   
ddbwo - Tag | 1625 hsz       Online status #196677   2013.08.11 22:02 GMT+1 óra  
Még a face tulajdonságához hozzáfűzök pár útravalót, csak hogy teljes legyen az alap.

UV: A textúra képén 0.0 és 1.0 közé esnek a pixelek. De ezen túlhaladva általában ismétlődő szokott lenni a minta.

normal vector: a face helyes normálvektorát a következőképpen számolhatod ki kb. csak unity átiratban:
Kód:
Vector3 e0 = vertex1 - vertex0;
Vector3 e1 = vertex2 - vertex0;

Vector3 normalVector = e0.Cross(e1);
normalVector.Normalize();


Szöveggel az egyik pontból kiinduló két él cross produktja normalizálva.
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 | 1625 hsz       Online status #196670   2013.08.11 19:17 GMT+1 óra  
Ezt a matematikai plane-t (síkot) nézd át.
http://docs.unity3d.com/Documentation/ScriptReference/Plane.html

Ezt a részt el kell képzelni. Azon kívül több lépcsős algoritmussal lehetne megoldani. Az így hirtelen jó sok elvont előre gondolkodást igényel, hogy egyáltalán láss belőle valamit.

Viszont már tudsz egy-két dolgot a mesh-ekről.

Ami most egy könnyebb de még mindig érdekes gyakorlat lenne, hogy csinálj egy 128*128 bontású lapot ezekből a négyszögekből, és a gömbödet mérd a kis háromszögek súlypontjához. Ha nekik ütközik, töröld a háromszögeket. Tádám! Lyukak! Nem teljesen pontos lyukak, de abból is zúzás lesz viszonylag egyszerűen.

Ezt megcsinálni még segít is a gyakorlásban. Aztán pedig akár felbontott modelleken is kipróbálhatod.
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 #196669   2013.08.11 18:59 GMT+1 óra  
Köszike. xD
Talán könnyebb lenne megvalósítani a golyónyom kivágás helyet a kocka kivágást.
Az az nem gömböt hanem négyszöget nyomok neki egy másik sima felületnek(Másik négyszögnek pl).

Hogyan jöjjek rá,hogy mennyi szögből fog állni,a módosított sima felület?Mert ugye amint belehúzom egy kicsit már módosulnia is kell az alakjának egy kicsit.Minden húzásnál újra kell számolni de,hogy?
Ez annyira bonyolult.

Ötletem sincs.
Még rosz ötletem sincs az a legdurvább az egészbe.
Hogyan tanuljam meg?

   
ddbwo - Tag | 1625 hsz       Online status #196647   2013.08.10 19:33 GMT+1 óra  
Hát ha működik, így kell csinálni.

Csak úgy tűnik, hogy 4 háromszöget csináltál elvileg. De jónak tűnik.

A "tri" jelenti az index tömbödet, ami a "p" vertexeket felhasználva kialakítja a face-eket. Három index-ből lesz a face.
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 #196644   2013.08.10 16:41 GMT+1 óra  
Így lett jó:
tri = new int[12] {
0,2,1,
2,3,1,
4,6,5,
6,7,5
};

De most nagyon bele vagyok zavarodva.
De azt hiszem kezdem érteni.

Amúgy jól csináltam az egésszet így gondoltad te?Így kell?

   
Viperion - Tag | 540 hsz       Online status #196643   2013.08.10 16:28 GMT+1 óra  
Nem akar jó lenni.
Itt kapok egy négyszöget és mellé egy háromszöget.
Az utolsó háromszög nem akar kirajzolódni.

A kód hozzá van adve egy üres objekthez.Egymás mellé akarok két kockát.
Kód:
using UnityEngine;
using System.Collections;

public class MakingAPlaneScript: MonoBehaviour
{

// Use this for initialization
void Awake()
{
    gameObject.AddComponent<MeshFilter>();
gameObject.AddComponent<MeshRenderer>();

Vector3[] vertices, normals;
Vector2[] uv;
int[] tri;

float xPos = 4f, zPos = 4f;

MeshFilter mf = gameObject.GetComponent<MeshFilter>();
mf.mesh = new Mesh();
mf.mesh.name = "GameObject";

//FacePoint
Vector3 p0 = new Vector3(0,0,0);
Vector3 p1 = new Vector3(xPos,0,0);
Vector3 p2 = new Vector3(0,0,zPos);
Vector3 p3 = new Vector3(xPos,0,zPos);
Vector3 p4 = new Vector3(xPos,0,0);
Vector3 p5 = new Vector3(xPos+xPos,0,0);
Vector3 p6 = new Vector3(xPos,0,zPos);
Vector3 p7 = new Vector3(xPos+xPos,0,zPos);

vertices = new Vector3[8] {
p0,
p1,
p2,
p3,
p4,
p5,
p6,
p7
};

tri = new int[12] {
0,2,1,
2,3,1,
1,3,4,
3,5,4
};

normals = new Vector3[8] {
-Vector3.forward,
-Vector3.forward,
-Vector3.forward,
-Vector3.forward,

-Vector3.forward,
-Vector3.forward,
-Vector3.forward,
-Vector3.forward
};

uv = new Vector2[8] {
new Vector2(0,0),
new Vector2(1,0),
new Vector2(0,1),
new Vector2(1,1),

new Vector2(1,0),
new Vector2(2,0),
new Vector2(1,1),
new Vector2(2,1),
};

mf.mesh.vertices = vertices;
mf.mesh.triangles = tri;
mf.mesh.normals = normals;
mf.mesh.uv = uv;

mf.mesh.RecalculateNormals();
mf.mesh.RecalculateBounds();
mf.mesh.Optimize();

gameObject.renderer.material.shader = Shader.Find("Diffuse");
}

}

   
ddbwo - Tag | 1625 hsz       Online status #196636   2013.08.10 10:03 GMT+1 óra  
u.i: Ha az kavar meg, alap esetben nem kell a két for a koordináta generáláshoz, csak azért rakta be, hogy tudjon csempézni belőlük meghatározott méretet.
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 | 1625 hsz       Online status #196635   2013.08.10 09:27 GMT+1 óra  
A Unity object generáláson megy végig.

- objektum létrehozása, listák.
- algoritmus két for ciklusból.
- feltölti a listát tagokkal. de hibásan. Trianglékat kell megadni. rajzold le négyzetrácsos füzetbe az alakzatot és két háromszögként rakd be.
- feltölti az adatokat
- végül alkalmazza az objektumra

---

Az ilyesmi összetettebb rendszerekbe mindenkinek idő beleszokni, átlátni, stb. Ha lassabbnak érzed magad, akkor még több idő. Többször is érezni fogod, hogy nem tudod, nem érted. Addig kell nézegetni, míg meg nem történik az áttörés. Mást nagyon nem lehet csinálni. Az agyadnak rá kell állni a témára. Csak ne kudarcként fogd fel, hanem egy kötelező folyamatnak.

---

Amúgy ez a mesh plane nem a matematikai értelmű plane, ami egy végtelen síkot ír le. A plane matematikailag olyasmi, mint az egyenes képlete, ami egy végtelen vonalat ír le. Csak síkban.
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 #196632   2013.08.10 03:38 GMT+1 óra  
Találtam ezt a kódot de nem értem,hogy hogyan jön létre a plane.
Az a baj,hogy hiába elemzem a kódot nem áll össze a kép.Nem a nyelvi elemek hiányossága okozza a problémát mert e téren nincsenek hiányosságaim.Egyszerűen az algoritmus működését nem látom át a fejembe.Olyan buta vagyok.


Itt a kód:
http://answers.unity3d.com/questions/382853/generating-a-plane-mesh-with-code-c.html

   
Viperion - Tag | 540 hsz       Online status #196630   2013.08.10 02:24 GMT+1 óra  
Nem tudom,hogyan kell plane Mesh-t csinálni a google segítségével talált információkból és példakódokból pedig nem értettem semmit.
Egyébként négyszögekből áll a plane ugye?Ezek a négyszögek pedig két háromszögből.
Jól mondtam.

Minden négyszögnek saját uv kell adnom és még mit?

   
ddbwo - Tag | 1625 hsz       Online status #196628   2013.08.09 23:45 GMT+1 óra  
1.
A shared vertices jelentheti azt, hogy index tömb segítségével jön ki a vertex szám. Ugyan az a vertex többször is sorra kerül.
A unique jelentheti azt, hogy mindegyik külön számít. Nem használja fel többször ugyanazt.

Első esetben 8 vertex lenne, másodikban 24. Mert minden oldalnak külön számítanak a vertexei. Talán az oldal normáljára is kihat, ami ebben a formában az oldalak simítását jelentené.

2.
Igen.

3.
Az lenne a Unity lényege, hogy nem kell lemenned matematikai és algoritmikus szintekbe szenvedni, hanem valami játék félét csinálhatsz egyből.
Lehet érdekes lenne megcsinálni a golyónyom kivágását, de nehéz témának számít. A felületre be kéne mérni az új háromszögeket, amik a lyukat körbe kipótolnák.Matematikával és algoritmusokkal. Ez olyan dolog, amit érteni kell, átlátni, meg ilyesmi nagyzásos szavak. Mondhatnánm úgy is, hogy a "nagyoknak" való.
Különben hiába vezetné le bárki az egészet, nem állna össze a kép. Itt egy kis hiba, ott valami nem jó, azt meg miért, stb-stb egy kicsit hosszabb folyamaton keresztül.

Ebből a szempontból hasznosabb lenne, ha a scriptelést gyakorolnád egy ideig. Meg a "Unity plane" tulajdonságokat átnézni.
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 #196627   2013.08.09 21:56 GMT+1 óra  
Mit akrsz ezzel mondani:
"A unique jelentése egyedi, a shared az megosztott. Gondolom azt jelenti, hogy újra felhasználják-e. Vagyis többszőr.."
Ezt nem értem.

És a shared mesh azt mikor kell használni?Miért van shared és sima mesh. ?
Az a külömbség köztük,hogy ha pl. több object használja ugyanazt a hálót akkor a MeshFilter.mesh -t alkalmazva csak az egyik gameObject hálója változik míg sharedMesh esetén az összes?

Kösz hogy van türelmed hozzám hidd el tényleg hálás vagyok.Egyébként marhára bánt,hogy nem tudom megcsinálni az alább ki írt kitalált gyakorlat feladatomat.

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

   
ddbwo - Tag | 1625 hsz       Online status #196624   2013.08.09 18:33 GMT+1 óra  
Viperion:
Amit körülírtál, egész kevesen csinálják meg. Pont a magas matek és erős "algoritmikus" felépítés miatt.
---

Az UV a vertexhez tartozik. a textúrán szereplő koordináta. Magyarul abból lesz a kép a modelre hajtogatva. A normál azért kell a face-nek, mert onnan lehet tudni merre van az oldal, vagy hogy milyen a felület. És abból lesz a shader is számolva.

A unique jelentése egyedi, a shared az megosztott. Gondolom azt jelenti, hogy újra felhasználják-e. Vagyis többszőr...
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 #196621   2013.08.09 13:27 GMT+1 óra  
Értem azoknak,utánnanézek,akkor.
De nem tudom ezt megcsinálni még mindig a matek miatt szerintem.
Képzeljétek el,hogy van egy 3D négyszög és ha bele lövök egy gömböt a közepébe akkor a négyszögön mennyen keresztül és keletkezzen egy akkora sugarú lyuk a négyzetbe amekkora gömböt átlőttem rajta.

És olastam a shared vertices és az unique vertices-ről.És az lenne a külömbség köztük,hogy pl egy unique négyszög vertexei több vertexből állnak?

Nem tudom,hogyan számoljam ki a vertexeket meg a többit.Látom fejben,hogyan kell megvalósítani de nem megy.

Ezt a hozzászólást Viperion módosította (2013.08.09 14:06 GMT+1 óra, ---)

   
FZoli - Szerkesztő | 4892 hsz       Online status #196620   2013.08.09 09:23 GMT+1 óra  
nah most ezeknek a dolgoknak olyan csudi jó online forrásai vannak h beszarsz. Szerintem senki sem fogja ezt neked örömmel leírni. Még a unity dokumentáció is elégségesen elmagyarázza.
   
Viperion - Tag | 540 hsz       Online status #196615   2013.08.08 23:54 GMT+1 óra  
Hello.
Megint lenne pár db kérdésem de csak,akkor válaszoljatok amikor úgy érzitek nem megyek az agyatokra.

A vertexek ugye a face végpontjai és egyben a háromszögek csúcsai is?
Az edge a vertexek közti szakasz ugye?
A háromszögek pedig azok amikből áll a face?

És a normals és az uv ezekre miért van szükség talán azért mert ha nem adjuk meg az uv -t ami
nem tudom mi,akkor nem lehet texturája a hálónak?

És miért kell,hogy legyen normalja a mesh nek?

És ötletem sincs,hogy hogyan tudnék kirajzolni most a négyszög után egy kört(Nem 3D gömböt).

   
Geri - Törzstag | 2188 hsz       Online status #196535   2013.08.03 12:43 GMT+1 óra  
Idézet
versio :
2 millio user hasznalja az unityt, tobben nyomjak mint a linuxot



az nagyon érdekes, hisz a linuxot 90 millióan használják desktop gépeken és laptopokon, notebookokn
routereken 4-600 millióan, okostévéken néhány százmillióan
de az androidos készülékek x milliárdos táborát is linux hostolja

érdekes

   
ddbwo - Tag | 1625 hsz       Online status #196531   2013.08.03 07:52 GMT+1 óra  
A face egy oldal, amit legalább három vertex alkot. Az edge két vertex közt az él. Egy háromszögnek három éle van. Ezeket a vertex index tömbökkel szokták használni, hogy minden azonos tulajdonságú vertex csak egyszer szerepeljen.

Tehát elvileg szerepelni szokott maga a vertex tömb, másrészt egy index tömb. Fizikánál és CPU oldali animációnál is jobb, ha minden vertexet csak egyszer kell animálni.

Attól függően, hogy a vertex indexek milyen alakzatokat szeretnének leírni (háromszög, négyszög) alakulnak ki az élek. Viszont minden háromszög külön számít, ezért egy él összetettebb polynál többször is szerepel.

A face állhat négyszögből is, vagy néhol több vertex-ből is. A Unity nem tudom használ-e négyszöget, de annál összetettebb face-eket nem hiszem, hogy használná.
---

Csinálj egy négyszöget és írd ki valahova a vertexeinek a számát. Elvileg négy lesz. Gyakorlatilag hatnak számít.
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 #196521   2013.08.02 20:50 GMT+1 óra  
Mi az a face a 3D grafikában mit értesz ez alatt.?

Ezt a hozzászólást Viperion módosította (2013.08.03 01:04 GMT+1 óra, ---)

   
ddbwo - Tag | 1625 hsz       Online status #196517   2013.08.02 19:50 GMT+1 óra  
Viperion:

A normál a vertexekhez tartozik, annak a segítségével lehet shadereket számolni, meg szűrni a face-eket. Itt a képletben minden vertex a hozzá tartozó normal vector irányába "pulzál".

A normál vector egy irány vektor, ennek megfelelően egység hosszú. Azaz normalizált vektor kell hogy legyen.

Ha a face sima, akkor minden normal vector egy irányba mutat. Összetett simított felületeknél, mint mondjuk egy labdánál, minden vertexre különböző irányú normal vector jut.
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 | 659 hsz       Online status #196505   2013.08.02 15:55 GMT+1 óra  
2 millio user hasznalja az unityt, tobben nyomjak mint a linuxot
   
FZoli - Szerkesztő | 4892 hsz       Online status #196477   2013.08.01 17:02 GMT+1 óra  
az idzett sorhoz:
tfh: vertex += normals * p
ez nem más, mint felület irányába kimozditod a p értéknek megfelelő értékben a vertexet.
ehhez hasonló van az idézett sorban, csakhogy ott az idő szinusza ez a p érték
és mi az idő szinusza? -1 és 1 között egy folyamatosan hullámzó érték.
konkluzio: a felületed pulzálni fog.
   
Viperion - Tag | 540 hsz       Online status #196474   2013.08.01 15:03 GMT+1 óra  
Utánna néztem pár dolognak.
http://docs.unity3d.com/Documentation/ScriptReference/Mesh.html
http://docs.unity3d.com/Documentation/ScriptReference/Mesh.CombineMeshes.html

Ugye itt a mesh filterről van szó és ez felel az alakzatért ugye?
Az,hogy mi van az első linken azt értem.
De mi az a CombineMesh ezt nem sikerült megértenem.Elmagyaráznátok pls.

Kód:
vertices[i] += normals[i] * Mathf.Sin(Time.time);
És van ez a sor a normals az egy egységnyivé varázsolja a csúcsokat ugye? A Mathf.Sin pedig azért kell mert Sinusba kell megadni a vertex pontokat?

   
fpeti - Törzstag | 1291 hsz       Online status #196465   2013.08.01 00:23 GMT+1 óra  
Ha az algo érdekel mögötte: a Sutherland–Hodgman poligonvágó módszer működik 2d-ben és 3d-ben is. Először mindenképpen 2d-ben javasolnám megérteni - nagyon egyszerű egyébként.
   
ddbwo - Tag | 1625 hsz       Online status #196464   2013.07.31 23:20 GMT+1 óra  
Az több lépcsős dolog lenne. Először is meg kell keresned a mesh felépítésének leírását v ilyemsit. Ha begyakoroltad a módosítgatást, akkor a "unity plane" tulajdonságait megérteni. Vagy a sima plane-ét.
A plane matematikailag különálló téma, mint a kvaterniók vagy a mátrixok.

Síkok, vágósíkok, geometria adatszerkezet, új geometria. Geometria fizikai objektumként ha az is kell... Szóval most a létrehozás is kell.

Mert ha valamit kettévágsz, akkor módosítod a vertex-eket (és edge-eket, face-eket), alkalmazod a középpontot, létrehozol egy új objektumot a korábbi vertexekből, és annak is alkalmazod a középpontot. Aztán mindkettőnek frissíteni a fizika engine tulajdonságait.

A végén kapsz majd valamit, de ha csak nem egy gamemakerből akarsz editort gyártani, nem sok haszna lenne.

Viszont lefoglalhat egy darabig.
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
   
Frissebbek | Korábbi postok
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [15] [20] [25] [30] [35] > 40 < [45] [50] [55]