Zobrazit předchozí téma :: Zobrazit následující téma |
Autor |
Zpráva |
perry

Založen: 28. 07. 2009 Příspěvky: 879
|
Zaslal: 12. červenec 2010, 17:58:01 Předmět: |
|
|
Jeskyně pomocí height mapy by možná šli. Jen tak mě to napadlo. Máš 4-kanálovou texturu (ARGB), tak řekněme kanály AR by tvořily nadmořskou výšku, kanál G by určoval "jeskyni" vytvořenou pod nadmořskou výškou určenou z AR a B by mohl třeba obsahovat převisy... ale nikdy jsem to nezkoušel a napadlo mě to v autobuse cestou domu
Pokud chceš terén jemný, tak můžeš vzít height-mapu a terén s 4x vyšší hustotou a mapovat info z height-mapy po 4 vchrolech a ostatní informace aby to bylo jemné dopočítat interpolací nebo např. geomorfingem.
Další co jde s height-mapou udělat je vzát jen hodnoty a pomocí numerický metod z nich určit funkci (definovanou např. přes sin a cos). Tím pak můžeš udělat velmi jemný terén, rychlé kolize pro pohyb (a hlavně dost přesné) a můžeš terén libovolně zvětšovat a zmenšovat bez ztráty detailu. Jeden můj kamarád to kdysi dělal a vypadalo to docela dobře, nicméně výpočet té funkce chvilku trval  _________________ Perry.cz |
|
Návrat nahoru |
|
 |
Augi

Založen: 28. 07. 2007 Příspěvky: 782 Bydliště: Čerčany
|
Zaslal: 12. červenec 2010, 17:59:31 Předmět: |
|
|
Tak když "průměrná výška povrchu terénu" bude značně větší než 0 a zároveň použiješ jako speciální hodnotu 0, tak tam ty trojúhelníky klidně nech a grafická karta se o jejich odstranění postará (pokud to neuděláš Ty sám díky nějaké formě clippingu). Místa s hodnotou 0 budou prostě tvořit hlubokou propast (která ale nebude nikdy vidět, protože ta díra bude přiklopena nějakým tím statickým objektem). |
|
Návrat nahoru |
|
 |
Svestka
Založen: 08. 07. 2010 Příspěvky: 32
|
Zaslal: 12. červenec 2010, 18:17:39 Předmět: |
|
|
Perry to co popisuješ je sice fajn ale podobný nápad už tady byl a zkus si představit jak by jsi podobný obrázek kreslil ručně. Interpolaci samotného terénu bych se pokud možno rád vyhnul, přecejenom proložení křivky je už dost náročná záležitost.
Augi:
No ale ta propast by měla taky přece své stěny a pokud by se jednalo o jeskyni tak si přece nepomůžu. Potřeboval bych aby tam ty trojúhelníky opravdu fyzicky nebyly.
Edit:
Teď mě ještě napadá, že ty trojúhelníky tak vpodstatě být můžou a mohl bych to řešit průhledností těch trojúhelníků + vypnutí jejich kolizí ale to bych měl další věc na testování. |
|
Návrat nahoru |
|
 |
perry

Založen: 28. 07. 2009 Příspěvky: 879
|
Zaslal: 12. červenec 2010, 18:23:14 Předmět: |
|
|
No.. na editaci by sis musel napsat nějaký vlastní editor  _________________ Perry.cz |
|
Návrat nahoru |
|
 |
Svestka
Založen: 08. 07. 2010 Příspěvky: 32
|
Zaslal: 12. červenec 2010, 18:34:36 Předmět: |
|
|
Vytvořit editor terénu sice v budoucnu pokud mě neopustí chuť hodlám jedná se ale o dalekou budoucnost a spíše jen o mé myšlenky než o realné představy. Ke všemu kladu důraz na univerzálnost takže bych se rád vyvaroval vlastních vymyšlených formátů pokud mohu použít lepší nebo srovnatelné jiné řešení.
Vpodstatě mi to příjde jako zbytečná komplikace, když by to šlo udělat jinak. Ono jak jsem psal pokud jsou ty převisy jednotlivě vytvořeny jako objekty a netvoří velké celky tak není problém jim vytvořit kolizní entity a pokud bych si představil tvorbu terénu v nějakém tom editoru tak představa modelování terénu se vším všudy by byla náročnější zvlášť, protože se terén často edituje než se vše odladí a v takovém případě je lepší mít základní terén a doplnit jej objekty jako jsou převisy, které by se zasunuly do terénu (přesahovaly by jej) už jen proto, že lze objekty libovolně transformovat, natáčet a také rychle mazat. |
|
Návrat nahoru |
|
 |
Laethnes
Založen: 14. 02. 2008 Příspěvky: 38
|
Zaslal: 12. červenec 2010, 19:02:50 Předmět: |
|
|
Svestka napsal: |
Vytvořit editor terénu sice v budoucnu pokud mě neopustí chuť hodlám jedná se ale o dalekou budoucnost a spíše jen o mé myšlenky než o realné představy. Ke všemu kladu důraz na univerzálnost takže bych se rád vyvaroval vlastních vymyšlených formátů pokud mohu použít lepší nebo srovnatelné jiné řešení. |
(Možná by tě zajímalo co jsem poslal dneska ráno - ten rozdělaný progámek na editaci výšky (a textury) terénu.) |
|
Návrat nahoru |
|
 |
Svestka
Založen: 08. 07. 2010 Příspěvky: 32
|
Zaslal: 12. červenec 2010, 19:12:14 Předmět: |
|
|
Koukal jsem na to a nejvíce se mi na tom líbilo to dodatečné vyhlazování hran to ti funguje moc pěkně ale na samotné deformaci terénu + zvětšování a zmenšování terénu by chtělo ještě zapracovat včetně pomalého mapování textur kdy ti fps klesne z 60 až k nule. Samozřejmě nechci ti to moc kritizovat jelikož sám jsem zatím nic podobného nevytvořil a nedá se říci, že by ti to nějak špatně fungovalo a ke všemu jsi psal, že se jedná o rannou fázi.
Jinak jak jsem psal úplně v úvodu na tom co dělám se vpodstatě učím takže si takovýto program časem (možná, možná taky ne) rád napíšu sám ale samozřejmě možnost nakouknout do zdrojových kódu by do budoucna nemusela být k zahození (ono vložit hlavičky nemůže být takový probém ale teď konkrétně mě ty zdrojáky abych pravdu řekl moc nezajímají). Jen ještě tak na okraj já bych při tvorbě editoru rozhodně nevolil C++ takto nízkoúrovňově a pokud bych vůbec použil C++ tak jedně s bohatou nadstavbou jako je například QT, která se na to náramně hodí, jelikož při tvorbě editoru je velice důležitým prvkem interface a naopak fps lze malinko oželet jelikož při editoru nemusíš vůbec řesit spousty věcí jako je fyzika, světlo (popřípadě jen zjednodušeně), stíny, kolize a spousty dalšího takže dle mého psát editor čistě v C++ bez nadstavby je nerozvážné.
Naposledy upravil Svestka dne 12. červenec 2010, 19:16:22, celkově upraveno 1 krát |
|
Návrat nahoru |
|
 |
Játro.m
Založen: 01. 02. 2010 Příspěvky: 230
|
Zaslal: 12. červenec 2010, 19:15:45 Předmět: |
|
|
citace: |
bude značně větší než 0 a zároveň použiješ jako speciální hodnotu 0 |
a nebude rovnou jednoddussi je preskakat pri generovani? Kdyz tam vhodne prdne ten model tak by se nemel propadnout a kolizim by to snad melo byt fuk ne? Kdyz se pocita vyska podle X a Z tak by možná teoreticky nemusel ani propadnout, ale pisu teoreticky jenom me to tak napada. |
|
Návrat nahoru |
|
 |
Laethnes
Založen: 14. 02. 2008 Příspěvky: 38
|
Zaslal: 12. červenec 2010, 19:19:57 Předmět: |
|
|
Svestka napsal: |
Koukal jsem na to a nejvíce se mi na tom líbilo to dodatečné vyhlazování hran to ti funguje moc pěkně ale na samotné deformaci terénu + zvětšování a zmenšování terénu by chtělo ještě zapracovat včetně pomalého mapování textur kdy ti fps klesne z 60 až k nule. Jinak jak jsem psal úplně v úvodu na tom co dělám se vpodstatě učím takže si takovýto program časem (možná, možná taky ne) rád napíšu sám ale samozřejmě možnost nakouknout do zdrojových kódu by do budoucna nemusela být k zahození (ono vložit hlavičky nemůže být takový probém ale teď konkrétně mě ty zdrojáky abych pravdu řekl moc nezajímají). Jen ještě tak na okraj já bych při tvorbě editoru rozhodně nevolil C++ takto nízkoúrovňově a pokud bych vůbec použil C++ tak jedně s bohatou nadstavbou jako je například QT, která se na to náramně hodí, jelikož při tvorbě editoru je velice důležitým prvkem interface a naopak fps lze malinko oželet jelikož při editoru nemusíš vůbec řesit spousty věcí jako je fyzika, světlo (popřípadě jen zjednodušeně), stíny, kolize a spousty dalšího takže dle mého psát editor čistě v C++ bez nadstavby je nerozvážné. |
Ok ^^.
zvětšování - zmenšování: měl jsem to původně jinak - to jak moc se to zvětšilo bylo závislé na vzdálenosti od středu, ovšem dělalo to velice nepříjemné zuby v jedné úhlopříčce. Takto je to dělané v editoru ke hře Age of Mythology (čímž jsem se taktéž inspiroval) a přijde mi, že to víceméně spolu s vyhlazováním stačí (i když není problém mít oba typy zvětšování/zmenšování).
Textury - jo, to jsem řešil na forum.builder.cz a byl jsem přesměrován sem, na ceske-hry.cz, takže si tu k tomu asi časem založím topic :3.
To co píšeš ke konci k nástavbě plně beru a plně se s tím ztotožňuji. Toto je jen taková ze stolu vzítá verze asi tak po pár dnech práce, hodlám využít wxWidgets. (Třídy na vložení OpenGL okna jsou připraveny.)
(Pozn.: než jsem dospěl k tomuto závěru, nakódil jsem hromady nesmyslů :3.) |
|
Návrat nahoru |
|
 |
Svestka
Založen: 08. 07. 2010 Příspěvky: 32
|
Zaslal: 12. červenec 2010, 19:31:26 Předmět: |
|
|
Nějak se tady ještě zapomněla má otázka jak pěkně texturovat výsledný terén aby při deformaci height mapy byla textura stále ještě použitelná a jakou metodu vůbec použít ? Jak jsem psal já jsem se setkal u terénu pouze s mapováním od kraje ke kraji kdy byla vytvořena jedna celistvá textura celé krajiny a ta se natáhla na kompletní model což se mi vůbec nelíbí ale nenapadá mě nějaký pěkný a efektivní způsob jak toto řešit (především aby se minimalizovalo přílišné roztahování textury). |
|
Návrat nahoru |
|
 |
nou

Založen: 28. 07. 2007 Příspěvky: 1050
|
Zaslal: 12. červenec 2010, 19:55:04 Předmět: |
|
|
no jednym riesenim je mat jednu velku texturu na cely teren a k tomu dalsiu detail texturu ktora sa bude opakovat. _________________ Najjednoduchšie chyby sa najtažšie hľadajú. |
|
Návrat nahoru |
|
 |
perry

Založen: 28. 07. 2009 Příspěvky: 879
|
|
Návrat nahoru |
|
 |
Augi

Založen: 28. 07. 2007 Příspěvky: 782 Bydliště: Čerčany
|
Zaslal: 12. červenec 2010, 20:08:23 Předmět: |
|
|
Svestka napsal: |
Augi:
No ale ta propast by měla taky přece své stěny a pokud by se jednalo o jeskyni tak si přece nepomůžu. Potřeboval bych aby tam ty trojúhelníky opravdu fyzicky nebyly. |
Pomůžeš - ty stěny půjdou kolmo dolů (jak hodně kolmo záleží na implementačních detailech), takže to de facto bude, jako by tam nebyly.
Játro.m napsal: |
citace: |
bude značně větší než 0 a zároveň použiješ jako speciální hodnotu 0 |
a nebude rovnou jednoddussi je preskakat pri generovani? Kdyz tam vhodne prdne ten model tak by se nemel propadnout a kolizim by to snad melo byt fuk ne? Kdyz se pocita vyska podle X a Z tak by možná teoreticky nemusel ani propadnout, ale pisu teoreticky jenom me to tak napada. |
Jo. Já jsem bral situaci, kdy to nechce ošetřovat (ono se to opravdu vyřeší samo). Logika, že když bude mít alespoň jeden vertex vertikální pozici < 1, tak se nic nevykreslí, tam bejt může samo taky... |
|
Návrat nahoru |
|
 |
Svestka
Založen: 08. 07. 2010 Příspěvky: 32
|
Zaslal: 12. červenec 2010, 20:57:07 Předmět: |
|
|
Co se týká té "propasti" tak tam si asi nerozumíme. Představ si, že potřebuji díru o velikosti jednoho čtverce ~ dvoum trojúhelníkům v takovém případě by byla do zeme udělaná díra ale ta díra by byla vpodstatě jen vytlačená do terénu pokud to dobře chápu takže by ten terén nebyl průchozí a vpodstatě bych se stále nedostal dovnitř kopce v případě jeskyně. Tvá varianta lze použít (znovu podotýkám jestli tě dobře chápu) pouze u těch výklenků a menších detailů ale né pokud chci "díru" do kopce.
perry:
Díky.
Podle nadmořské výšky se mi texturovat nechce jelikož to není příliš univerzální někdy chci horu kamenitou jindy zase může jít o horu travnatou, jindy plně zasněženou apod.
Věděl by zase někdo co se využívá v praxi pokud chci pěkně detailní textury?
Já jsem z různých editorů map co jsem viděl usoudil, že se v praxi používají malé čtverce, které se postupně nanáší na terén a v nějakém externím souboru se poté uchovávají pozice jednotlivých čtverců. Vím, že už jste psali co se dá využít ale to mi přišlo takové né příliš ideální, kdyby někdo dokázal zase říci využití různých technik u různých projektů bylo by to nejlepší. |
|
Návrat nahoru |
|
 |
frca

Založen: 28. 07. 2007 Příspěvky: 1561
|
Zaslal: 13. červenec 2010, 07:27:01 Předmět: |
|
|
Jeden způsob texturování ukazuje obrázek.
Část terénu je namapovaná automaticky (půdorysně) a část (hory) ručně. Vpravo jsou UV souřadnice. (Je to dělané v rychlosti, takže to nevypadá dokonale, ale myšlenka je snad jasná.) _________________ www.FRANTICWARE.com |
|
Návrat nahoru |
|
 |
|