» »

tekstura [c++ opengl]

tekstura [c++ opengl]

aaaaa93 ::

Kako dodati v program teksturo delam z glut-om(glut je knjižnica opengl) problem pa nastane ker glut ne podpira teksture, trenutno imam samo deklarirano
#include <GL/glut.h>

sedaj pa ne vem kako naj rešim problem o teksturi

Senitel ::

Glut nima funkcionalnosti za nalaganje tekstur iz datotek. Imaš funkcije glTexImage ali pa boš moral uporabit še kakšno drugo zunanjo knjižnico.

aaaaa93 ::

Bom kako zunanjo, prosim če mi daš, kak primer, oz. svetuješ kaj je najbolje, delam prvič z glutom. samo da mi nebi bilo potrebno vse šeenkrat delat ;) ..

Zgodovina sprememb…

  • spremenil: aaaaa93 ()

Senitel ::

Preberi si tale tutorial. Je pa tudi še varianta: GLFW recimo.

matej94 ::

Ekola tole javla kompajler ne znam zrihtat od nehe tutorijala dol zlovdal (tam kjer piše glut,prebral navodila pa ne dela. Texturo sem goraj deklariral pa funkcijo sem init kilical, pred ladjico pa ne primer ;((((
http://nehe.gamedev.net/tutorial/textur...
C:\Users\Matej\Desktop\GLUT\igra\main.cpp|49|undefined reference to `tgaLoad(char*, image_t*, unsigned int)'|
||=== Build finished: 1 errors, 31 warnings ===|

void init(void)
{
   glShadeModel(GL_SMOOTH);							// Enable Smooth Shading
	glClearColor(0.0f, 0.0f, 0.0f, 0.5f);				// Black Background
   glEnable ( GL_COLOR_MATERIAL );
   glColorMaterial ( GL_FRONT, GL_AMBIENT_AND_DIFFUSE );

	glEnable ( GL_TEXTURE_2D );
   glPixelStorei ( GL_UNPACK_ALIGNMENT, 1 );
   glGenTextures (1, texture_id);

   image_t   temp_image;

   glBindTexture ( GL_TEXTURE_2D, texture_id[CUBE_TEXTURE] );
//
//tuki jamra
tgaLoad  ( "swirl.tga", &temp_image, TGA_FREE | TGA_LOW_QUALITY );
//
//
   glEnable ( GL_CULL_FACE );

   //glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST);
}

MrBrdo ::

Torej ti manjka določen include ane.
Dej si ti najprej osnove Cja poglej, preden se spravljaš na OpenGL.
MrBrdo

matej94 ::

ja sedaj uprabljam soil če pa soil deklariram v linkerju , pa mi javi 50 erorjev, problem je v tem ker so na netu napisana samo naovidila za visual c++ jaz pa uprabljam code blcks, tako da ne vem kaj moram sedaj spremeniti. Če kdo ve hvala

matej94 ::

Texturo delajo vendar ko jo dodam za ozadje mi pa začne zelo laggat, dela zelo počasi.
Mogoče ve kdo kaj spremenit, 2 ladji delata tole pa zelo zelo upočasnjuje, prosim če lahko kdo pogleda in pove kako boljšo rešitev..
Imam jo v update funkciji:

  glBindTexture(GL_TEXTURE_2D, my_texture3);
       glBegin(GL_QUADS);

     glColor3f(1.0f, 1.0f, 1.0f);
     glTexCoord2f(0.0f, 0.0f);
     glVertex2f(-1, -1);
     glTexCoord2f(1.0f, 0.0f);
     glVertex2f(1, -1);
     glTexCoord2f(1.0f, 1.0f);
     glVertex2f(1,1);
     glTexCoord2f(0.0f, 1.0f);
     glVertex2f(-1,1);
     glEnd();
     glBindTexture(GL_TEXTURE_2D,5);


tole pa v main:
my_texture3 = SOIL_load_OGL_texture
   (
           "Data/morje.bmp",
           SOIL_LOAD_AUTO,
           SOIL_CREATE_NEW_ID,
           SOIL_FLAG_INVERT_Y
        );

Senitel ::

Kakšne dimenzije je tekstura in kakšen filtering imaš nastavljen?
Sicer pa kakšen framrate imaš?

matej94 ::

70*70 pixlov velika texstura

filteringa nimam, samo to imam te stvari kode ki sme poslal.
To je tudi to


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[c++]OpenGL izris kvadrata

Oddelek: Programiranje
81269 (1129) Mavrik
»

[C && OpenGL] "speed tape"

Oddelek: Programiranje
71264 (1115) Monster
»

C++ programirane v Open GL oz. Direct x

Oddelek: Programiranje
242975 (2246) Vesoljc
»

OpenGL problem

Oddelek: Programiranje
212481 (2047) Gundolf
»

Transparentnost

Oddelek: Programiranje
111242 (1061) Senitel

Več podobnih tem