.[ ČeskéHry.cz ].
XNA 4.0 problemek

 
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> 3D API / 3D Enginy
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
dez1nd



Založen: 12. 03. 2012
Příspěvky: 20

PříspěvekZaslal: 12. březen 2012, 19:15:53    Předmět: XNA 4.0 problemek Odpovědět s citátem

Zdravim, pred necelim rokem jsem zacal programovat v C# a ucim se programovat v XNA 4.0 mam pripraveny maly projekt do ktereho bych chtel nahrat uroven pomoci vyskove mapy.

jelikoz nemam vykonny NTB tak jsem prepnuty v XNA do REACH profilu ale ten bohuzel nepodporuje 32bit IndexBuffer (jestli to chapu dobre)
a vyhazuje mi to tuto hlasku "XNA Framework Reach profile does not support 32 bit indices. Use IndexElementSize.SixteenBits or a type that has a size of two bytes."

snazil jsem se googlit ale beznadejne, tak prosim o radu Vas...Rolling Eyes

mohu zaslat zdrojovy kod nebo samotnou tridu..

diky moc Dez1nd
ps: omlouvam se za diakritiku mam EN klavesnici..
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
satik



Založen: 06. 05. 2010
Příspěvky: 161
Bydliště: Krkonose

PříspěvekZaslal: 12. březen 2012, 19:50:52    Předmět: Re: XNA 4.0 problemek Odpovědět s citátem

dez1nd napsal:
jelikoz nemam vykonny NTB tak jsem prepnuty v XNA do REACH profilu ale ten bohuzel nepodporuje 32bit IndexBuffer (jestli to chapu dobre)


ano, chapes to dobre, viz http://msdn.microsoft.com/en-us/library/ff604995.aspx

dez1nd napsal:
a vyhazuje mi to tuto hlasku "XNA Framework Reach profile does not support 32 bit indices. Use IndexElementSize.SixteenBits or a type that has a size of two bytes."

snazil jsem se googlit ale beznadejne, tak prosim o radu Vas...Rolling Eyes


musis index buffer vytvaret jako 16bitovy, napr.:

citace:
myIndexBuffer = new IndexBuffer(device, IndexElementSize.SixteenBits, indices.Length, BufferUsage.WriteOnly);
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
dez1nd



Založen: 12. 03. 2012
Příspěvky: 20

PříspěvekZaslal: 12. březen 2012, 20:06:52    Předmět: Re: XNA 4.0 problemek Odpovědět s citátem

musis index buffer vytvaret jako 16bitovy, napr.:

citace:
myIndexBuffer = new IndexBuffer(device, IndexElementSize.SixteenBits, indices.Length, BufferUsage.WriteOnly);


Laughing
tak po uspesnem opraveni je tam dalsi chyba

terrainIndexBuffer = new IndexBuffer(device, IndexElementSize.SixteenBits, indices.Length, BufferUsage.WriteOnly);

a to presne tady:
terrainIndexBuffer.SetData(indices);

The array is not the correct size for the amount of data requested

Rolling Eyes
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
satik



Založen: 06. 05. 2010
Příspěvky: 161
Bydliště: Krkonose

PříspěvekZaslal: 12. březen 2012, 20:17:23    Předmět: Re: XNA 4.0 problemek Odpovědět s citátem

dez1nd napsal:
tak po uspesnem opraveni je tam dalsi chyba

terrainIndexBuffer = new IndexBuffer(device, IndexElementSize.SixteenBits, indices.Length, BufferUsage.WriteOnly);

a to presne tady:
terrainIndexBuffer.SetData(indices);

The array is not the correct size for the amount of data requested

Rolling Eyes


no, podle hlasky ti nejspis nesedi velikost indices s tim, co ocekava terrainindexbuffer v setdata, tak se koukni na to Smile

pripadne sem hod kousky kodu...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Manox



Založen: 30. 07. 2007
Příspěvky: 140
Bydliště: Brno

PříspěvekZaslal: 12. březen 2012, 20:40:53    Předmět: Odpovědět s citátem

Jakého typu máš Indices ? Musí to být Int16[]
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
dez1nd



Založen: 12. 03. 2012
Příspěvky: 20

PříspěvekZaslal: 12. březen 2012, 21:45:47    Předmět: Odpovědět s citátem

Manox napsal:
Jakého typu máš Indices ? Musí to být Int16[]


mam to takhle=
int[] indices;
pokud to zmenim na
Int16[] indices;
vyplivne to na me
"Cannot implicity convert int to short.."
ale mam tam mnoho cyklu u kterych je stale Int32..
tak je to asi tim.. jeste to zkusim vyladit..
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
rezna



Založen: 27. 07. 2007
Příspěvky: 2156

PříspěvekZaslal: 12. březen 2012, 23:01:36    Předmět: Odpovědět s citátem

musis zacit korektne pouzivat Int16 pokud zvladas jen 16 bitovy buffery - stejne pri pouziti Int32 dojdes na zaokrouhlovaci problemy potom
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
dez1nd



Založen: 12. 03. 2012
Příspěvky: 20

PříspěvekZaslal: 14. březen 2012, 17:44:19    Předmět: Odpovědět s citátem

rezna napsal:
musis zacit korektne pouzivat Int16 pokud zvladas jen 16 bitovy buffery


uz se stalo, zacal jsem je pouzivat a zatim jede vse ok, uz se mi nacitaji mapy..
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zobrazit příspěvky z předchozích:   
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> 3D API / 3D Enginy Časy uváděny v GMT + 1 hodina
Strana 1 z 1

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra
Nemůžete odpovídat na témata v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete hlasovat v tomto fóru


Powered by phpBB © 2001, 2005 phpBB Group


Vzhled udelal powermac
Styl "vykraden" z phpBB stylu MonkiDream - upraveno by rezna