C++ -kysymykset

Muu yhteisön välinen keskustelu.
Feuer
Devoted Member
Posts: 520
Joined: Tue Jun 16, 2009 11:13 am
Contact:

Re: C++ -kysymykset

Post by Feuer »

Enkö vain osaa käyttää googlea, vai eikö SFML (1.6) muka osaa piirtää kuvaa kuvaan, kuten SDL SDL_BlitSurface()lla?

Se mitä yritän saavuttaa, on että lataisin ensin esim. 10Nx10N - kokoisen png:n levyltä (missä N on vakiomäärä pikseleitä ja 10 ei ole vakio), ja pilkkoisin tämän kuvan NxN - kokoisiksi kuviksi.
Asus P8P67 LE/Intel Core i5 2500K/ GTX560/ 8GT RAM/750GT HDDt + 120GT SSD + 13" Macbook Pro
Blogi - Peräpohjola - MERPG
temu92
Web Developer
Web Developer
Posts: 1226
Joined: Mon Aug 27, 2007 9:56 pm
Location: Gamindustri
Contact:

Re: C++ -kysymykset

Post by temu92 »

Tuolla on vastaus: http://www.sfml-dev.org/forum/viewtopic ... c248a72d78

Lyhyesti kuitenkin: ei SFML 1.6:ssä, mutta SFML 2:ssa kyllä. Kannattaa varmaan muutenkin tota 2:sta käyttää kun siinä on korjattu/paranneltu paljon asioita.
Feuer
Devoted Member
Posts: 520
Joined: Tue Jun 16, 2009 11:13 am
Contact:

Re: C++ -kysymykset

Post by Feuer »

Olisihan se ollutkin liian helppoa käyttää 1.6:tta :roll:

Käänsin SFML 2.0n tästä snapshotista, poistin 1.6:n tiedostot, kopioin 2.0-tason headerit ja libit oikeisiin kansioihin, sekä väänsin koodiin seuraavat rivit:

Code: Select all

#pragma comment(lib, "sfml-graphics-s.lib")
#pragma comment(lib, "sfml-window-s.lib")
#pragma comment(lib, "sfml-main.lib")
#pragma comment(lib, "sfml-system-s.lib")
ja sain koodin ajanmukaistamisen jälkeen seuraavan tulosteen:
1>App-class.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall sf::Drawable::SetRotation(float)" (__imp_?SetRotation@Drawable@sf@@QAEXM@Z)
1>App-class.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall sf::Drawable::SetY(float)" (__imp_?SetY@Drawable@sf@@QAEXM@Z)
1>App-class.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall sf::Drawable::SetX(float)" (__imp_?SetX@Drawable@sf@@QAEXM@Z)
1>App-class.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall sf::Window::Display(void)" (__imp_?Display@Window@sf@@QAEXXZ)
1>App-class.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: bool __thiscall sf::Window::PollEvent(class sf::Event &)" (__imp_?PollEvent@Window@sf@@QAE_NAAVEvent@2@@Z)
1>App-class.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: bool __thiscall sf::Window::IsOpened(void)const " (__imp_?IsOpened@Window@sf@@QBE_NXZ)
1>App-class.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall sf::Window::Close(void)" (__imp_?Close@Window@sf@@QAEXXZ)
1>App-class.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall sf::Texture::~Texture(void)" (__imp_??1Texture@sf@@QAE@XZ)
1>App-class.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall sf::Texture::Texture(void)" (__imp_??0Texture@sf@@QAE@XZ)
1>App-class.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall sf::Sprite::Sprite(void)" (__imp_??0Sprite@sf@@QAE@XZ)
1>App-class.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall sf::RenderTarget::Draw(class sf::Drawable const &)" (__imp_?Draw@RenderTarget@sf@@QAEXABVDrawable@2@@Z)
1>App-class.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall sf::RenderTarget::Clear(class sf::Color const &)" (__imp_?Clear@RenderTarget@sf@@QAEXABVColor@2@@Z)
1>App-class.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall sf::Color::Color(unsigned char,unsigned char,unsigned char,unsigned char)" (__imp_??0Color@sf@@QAE@EEEE@Z)
1>App-class.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual __thiscall sf::Sprite::~Sprite(void)" (__imp_??1Sprite@sf@@UAE@XZ)
1>main.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual __thiscall sf::RenderWindow::~RenderWindow(void)" (__imp_??1RenderWindow@sf@@UAE@XZ)
1>main.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall sf::RenderWindow::RenderWindow(void)" (__imp_??0RenderWindow@sf@@QAE@XZ)
1>main.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall sf::Window::Create(class sf::VideoMode,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,unsigned long,struct sf::ContextSettings const &)" (__imp_?Create@Window@sf@@QAEXVVideoMode@2@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@KABUContextSettings@2@@Z)
1>main.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall sf::VideoMode::VideoMode(unsigned int,unsigned int,unsigned int)" (__imp_??0VideoMode@sf@@QAE@III@Z)
1>MeObject.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: bool __thiscall sf::Texture::LoadFromFile(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class sf::Rect<int> const &)" (__imp_?LoadFromFile@Texture@sf@@QAE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@ABV?$Rect@H@2@@Z)
1>MeObject.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall sf::Sprite::SetTexture(class sf::Texture const &,bool)" (__imp_?SetTexture@Sprite@sf@@QAEXABVTexture@2@_N@Z)
1>Tileset.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: unsigned int __thiscall sf::Texture::GetHeight(void)const " (__imp_?GetHeight@Texture@sf@@QBEIXZ)
1>Tileset.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: unsigned int __thiscall sf::Texture::GetWidth(void)const " (__imp_?GetWidth@Texture@sf@@QBEIXZ)
1>Tileset.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: bool __thiscall sf::Texture::Create(unsigned int,unsigned int)" (__imp_?Create@Texture@sf@@QAE_NII@Z)
1>Tileset.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall sf::Sprite::Sprite(class sf::Texture const &)" (__imp_??0Sprite@sf@@QAE@ABVTexture@1@@Z)
1>H:\Ohjelmaprojektit\ME-koodit\MERPG-moottori\Release\MERPG-moottori.exe : fatal error LNK1120: 24 unresolved externals
Kaikki SFML-tiedostot ovat oikeata versiota, ja vaikka merkkaan pragma-rivein kaikki release-libit tai debug-libit käännökseen mukaan, silti saan ison kasan tuota linkkerisiansaksaa.

Jos jollakulla on jotain viisasta sanottavaa aiheesta, käytössä on tosiaan Visual Studio 2010.
Asus P8P67 LE/Intel Core i5 2500K/ GTX560/ 8GT RAM/750GT HDDt + 120GT SSD + 13" Macbook Pro
Blogi - Peräpohjola - MERPG
temu92
Web Developer
Web Developer
Posts: 1226
Joined: Mon Aug 27, 2007 9:56 pm
Location: Gamindustri
Contact:

Re: C++ -kysymykset

Post by temu92 »

En tiedä johtuuko ropleema tästä mutta SFML 2:ssa pitää määrittää define SFML_STATIC silloin kun käännetään static-kirjastoilla joka oli sinällään vapaaehtoista 1.6:ssa että kokeileppa tota :P
Feuer
Devoted Member
Posts: 520
Joined: Tue Jun 16, 2009 11:13 am
Contact:

Re: C++ -kysymykset

Post by Feuer »

No hitto, sehän toimii. Ellei kyseessä olisi kehittyvä versio, jonka dokumentaatio saa olla vähän sinnepäin, kehuisin tällaisten yksityiskohtien dokumentoimista hienoksi.
EDIT:

Ja jos joku miettii, mihin alempi viestini katosi, ongelma oli siinä, että png, jota yritin ladata, on ilmiselvästi korruptoitunut

Asus P8P67 LE/Intel Core i5 2500K/ GTX560/ 8GT RAM/750GT HDDt + 120GT SSD + 13" Macbook Pro
Blogi - Peräpohjola - MERPG
User avatar
Kille
Active Member
Posts: 249
Joined: Wed Aug 26, 2009 3:50 pm
Location: Juankoski

Re: C++ -kysymykset

Post by Kille »

Suunnittelin koodaavani C++/C#:lla jonkun pienen pelin. Mikä olisi paras vaihtoehto grafiikkaan? XNA? Irrlicht?
ZEPPELIN
Jatkoa tulossa... tällä kertaa lataus ei kestä viikkoa
temu92
Web Developer
Web Developer
Posts: 1226
Joined: Mon Aug 27, 2007 9:56 pm
Location: Gamindustri
Contact:

Re: C++ -kysymykset

Post by temu92 »

Riippuu teetkö 2D vai 3D. Itse kouluprojekteja nyt väsäilly C#/XNA:lla ja on se helpompi kuin C++, muistin käsittelyn osalta ainakin. Jos kuitenkin C++:lle päädyt 2D:tä tekemään niin SFML:ää kannattaa käyttää ehdottomasti. 3D:n osalta en osaa sanoa mitään.

Edits: haista p* esa
Last edited by temu92 on Tue Oct 25, 2011 2:15 pm, edited 2 times in total.
User avatar
esa94
Guru
Posts: 1855
Joined: Tue Sep 04, 2007 5:35 pm

Re: C++ -kysymykset

Post by esa94 »

temu92 wrote:Itse kouluprojekteja nyt väsäilly XNA:lla ja on se helpompi kuin C++, muistin käsittelyn osalta ainakin.
temu92 wrote:väsäilly XNA:lla ja on se helpompi kuin C++
temu92 wrote:XNA helpompi kuin C++
pöröröö?
TheFish
Developer
Developer
Posts: 477
Joined: Mon Aug 27, 2007 9:28 pm
Location: Joensuu

Re: C++ -kysymykset

Post by TheFish »

esa94 wrote:
temu92 wrote:Itse kouluprojekteja nyt väsäilly XNA:lla ja on se helpompi kuin C++, muistin käsittelyn osalta ainakin.
temu92 wrote:väsäilly XNA:lla ja on se helpompi kuin C++
temu92 wrote:XNA helpompi kuin C++
pöröröö?
Olettaisin, että tarkoitettiin XNA + C# on helpompi kuin C++.
CoolBasic henkilökuntaa
Kehittäjä
Latexi95
Guru
Posts: 1166
Joined: Sat Sep 20, 2008 5:10 pm
Location: Lempäälä

Re: C++ -kysymykset

Post by Latexi95 »

esa94 wrote: pöröröö?
No kyllä sitä nyt taas... XNA ei ole ohjelmointikieli vaan kirjasto, mitä ilmeisesti koitat sanoa?

C++:
Itse olen ihastunut Qt:hen ja uskon vakaasti että sillä 2d pelin saisi tehtyä loistavasti (jonkinlaista taidan rakennellakkin...). Jos 3D:tä ajattelit tehdä niin varmaan kannattaa johonkin 3d kirjastoon tutustua (Ogre, Irrlicht) jos vähänkin monimutkaisempaa kenttää ajattelit tehdä.

C#: XNA on varmasti hyvä vaihtoehto
User avatar
esa94
Guru
Posts: 1855
Joined: Tue Sep 04, 2007 5:35 pm

Re: C++ -kysymykset

Post by esa94 »

Latexi95 wrote:Itse olen ihastunut Qt:hen ja uskon vakaasti että sillä 2d pelin saisi tehtyä loistavasti
GUI-kirjastolla peli


täh
Latexi95
Guru
Posts: 1166
Joined: Sat Sep 20, 2008 5:10 pm
Location: Lempäälä

Re: C++ -kysymykset

Post by Latexi95 »

esa94 wrote:
Latexi95 wrote:Itse olen ihastunut Qt:hen ja uskon vakaasti että sillä 2d pelin saisi tehtyä loistavasti
GUI-kirjastolla peli


täh
Hah... Nyt kyllä pääsen näpäyttämään kerrankin sinua. :lol: Ei Qt ole mikään pelkkä GUI kirjasto... On siinä todella paljon muutakin. http://doc.qt.nokia.com/4.7/modules.html

Qt:lla kyllä pystyy tekemään vaikka mitä...
User avatar
esa94
Guru
Posts: 1855
Joined: Tue Sep 04, 2007 5:35 pm

Re: C++ -kysymykset

Post by esa94 »

Latexi95 wrote:
esa94 wrote:
Latexi95 wrote:Itse olen ihastunut Qt:hen ja uskon vakaasti että sillä 2d pelin saisi tehtyä loistavasti
GUI-kirjastolla peli


täh
Hah... Nyt kyllä pääsen näpäyttämään kerrankin sinua. :lol: Ei Qt ole mikään pelkkä GUI kirjasto... On siinä todella paljon muutakin. http://doc.qt.nokia.com/4.7/modules.html

Qt:lla kyllä pystyy tekemään vaikka mitä...
Oletitko tosissasi etten tiennyt Qt:n muista komponenteista, höpsö pikkupoika ^_^
Latexi95
Guru
Posts: 1166
Joined: Sat Sep 20, 2008 5:10 pm
Location: Lempäälä

Re: C++ -kysymykset

Post by Latexi95 »

esa94 wrote: Oletitko tosissasi etten tiennyt Qt:n muista komponenteista, höpsö pikkupoika ^_^
Sinusta ei nyt kyllä ota taas mitään selvää. Tähän nyt taas ei voi vastata mitään, koska tuosta edellisestäkään ei tiedä onko se totta. :)

"Höpsö pikkupoika" :lol: Pitäisiköhän laittaa tuo allekirjoitukseeni...
User avatar
esa94
Guru
Posts: 1855
Joined: Tue Sep 04, 2007 5:35 pm

Re: C++ -kysymykset

Post by esa94 »

Latexi95 wrote:"Höpsö pikkupoika" :lol: Pitäisiköhän laittaa tuo allekirjoitukseeni...
voe sinnuu
DJ-Filbe
Devoted Member
Posts: 854
Joined: Sat Feb 20, 2010 2:18 pm

Re: C++ -kysymykset

Post by DJ-Filbe »

esa94 wrote:
Latexi95 wrote:"Höpsö pikkupoika" :lol: Pitäisiköhän laittaa tuo allekirjoitukseeni...
voe sinnuu
Voi teitä isoja poikia :D
User avatar
Jare
Devoted Member
Posts: 877
Joined: Mon Aug 27, 2007 10:18 pm
Location: Pori
Contact:

Re: C++ -kysymykset

Post by Jare »

Seuraava skeidan puhuja saa sitten pikabannit. Joten ontopic tästä eteenpäin!
User avatar
Dibalo
Advanced Member
Posts: 298
Joined: Mon Aug 27, 2007 8:12 pm
Location: Espoo, Finland
Contact:

Re: C++ -kysymykset

Post by Dibalo »

Minä en ole näin lempeä.
The darkest spells can be found from
http://tunkkaus.blogspot.fi
Feuer
Devoted Member
Posts: 520
Joined: Tue Jun 16, 2009 11:13 am
Contact:

Re: C++ -kysymykset

Post by Feuer »

Mites sf::Imageen, tai muuhun johonkin muuhun sf:Drawablen perivään olioon, saisi piirrettyä sf::Drawable - tyyppiä edustavan olion tiettyyn sijaintiin? RenderTexturen draw()lle ei ilmeisesti voi antaa koordinaatteja, ja Image-luokan copy() ottaa sisäänsä vain Image-olioita.
Asus P8P67 LE/Intel Core i5 2500K/ GTX560/ 8GT RAM/750GT HDDt + 120GT SSD + 13" Macbook Pro
Blogi - Peräpohjola - MERPG
Latexi95
Guru
Posts: 1166
Joined: Sat Sep 20, 2008 5:10 pm
Location: Lempäälä

Re: C++ -kysymykset

Post by Latexi95 »

Kellään mitään tietoa mistä johtuu, että glMultiTexCoord4fv:n käyttäminen aiheuttaa GL_INVALID_OPERATION virheen? Yritän tehdä glsl:llä pseudo-instacing testiä ja koitan siirtää laatikoiden maailmamatriisit tekstuurikoordinaatteina.
EDIT:

Ei ehkä sittenkään johdu siitä. Joten ei ongelmaa tässä asiassa enää.

Post Reply