Avatar
fildanovo
Člen
Avatar
fildanovo:

Chyba při načítání textur. nejde načíst textura do mé hry. Jméno je správné. Načítání map funguje s kódem ImageIO.read(this­.getClass().get­Resource(file­Name)), bohužel při použití this na textury mi to píše Cannot use this in static context.

Editováno 8.7.2014 14:02
 
Odpovědět 8.7.2014 13:57
Avatar
fildanovo
Člen
Avatar
Odpovídá na fildanovo
fildanovo:

Do názvu vlákna jsem psal chyba při načítání textur. To co je tam napsáno není moje vinna.

 
Nahoru Odpovědět 8.7.2014 14:04
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na fildanovo
Jan Vargovský:

Protože this neexistuje ve statickém kontextu té třídy (ať už v konstruktoru nebo metodě). Ta instance nemusí existovat vůbec a nebo jich může být nekonečně mnoho.

 
Nahoru Odpovědět 8.7.2014 14:34
Avatar
fildanovo
Člen
Avatar
Odpovídá na Jan Vargovský
fildanovo:

Ano a jaké je tedy řešení mého problému.

 
Nahoru Odpovědět 8.7.2014 14:35
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na fildanovo
Jan Vargovský:

Předělat oba do statiky/ nestatiky.

 
Nahoru Odpovědět 8.7.2014 14:37
Avatar
Hartrik
Redaktor
Avatar
Odpovídá na fildanovo
Hartrik:

fileName by mělo být ve formátu

/xx/yy/zz/soubor

poté by to mělo fungovat

 
Nahoru Odpovědět 8.7.2014 14:44
Avatar
fildanovo
Člen
Avatar
fildanovo:

Omlouvám se asi jsem špatně popsal problém- problém je ten že když chci načíst obrázek pomocí BufferedImage image = ImageIO.read(Tex­ture.class.get­Class().getRe­source(fileNa­me)); tak mi to napíše že java.lang.Ille­galArgumentEx­ception: input == null!
at javax.imageio­.ImageIO.read(Un­known Source) a načítání map byla jenom ukázka že nejsem úplná lama(i když tak vypadám) a že nemám problém se složkama, samozřejmě vím this nemůže existovat ve statickém kontextu.

Editováno 8.7.2014 14:47
 
Nahoru Odpovědět 8.7.2014 14:44
Avatar
Hartrik
Redaktor
Avatar
Odpovídá na fildanovo
Hartrik:

Chyba by mohla být v class.getClass() - tím dostáváš další instanci Class z instance Class<Texture>.

Takže:

Texture.class.getResource(fileName);
 
Nahoru Odpovědět 8.7.2014 15:10
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 8 zpráv z 8.