ALT Linux Community general discussions
 help / color / mirror / Atom feed
* [Comm] OpenGL programming question (glut and fullscreen)
@ 2003-04-21 13:05 Andrey Brindeew
  2003-04-21 13:19 ` Roman Savelyev
  2003-04-21 17:32 ` [Comm] " Roman Bogorodskiy
  0 siblings, 2 replies; 5+ messages in thread
From: Andrey Brindeew @ 2003-04-21 13:05 UTC (permalink / raw)
  To: ALT Linux community

[-- Attachment #1: Type: text/plain, Size: 1246 bytes --]

Hi!

Никто случайно не знает, как перейти в glut в полноэкранный режим? Или
хотя бы подсмотреть в сырцах какой-нибудь программы, как это делается
(именно в glut, потому что программа написана на нем и требуется, как я
понимаю, режим устанавливать именно через glutовские функции, а не
напрямую).

Приложенный к этому письму пример не работает.

Выставите в файле tezt.c в строке glutGameModeString("1152x864:24@94")
свое разрешение, глубину цвета и вертикальную частоту обновления экрана
соответственно, потом программу нужно пересобрать командой make tezt
(Makefile приложен). Должен быть установлен пакет libglut-devel.

У меня программа всегда ругается на то, что режим не поддерживается,
хотя я выставил тот режим, в котором работает X-сервер (как бы его
данные в работающей программе выцепить :(( ).

В исходники quake2 уже смотрел - там они напрямую запрашивают список
modelines от X-сервера и потом выбирают нужный. Если так делать можно
(т.е. если glut после этого не заgluчит :-), то попробую
запрограммировать как в Q2.

P.S. Какие еще программы есть, написанные на C, которые поддерживают
полноэкранный режим и используют OpenGL + glut?

-- 
WBR, Andrey Brindeew.
"No one person can understand Perl culture completely"
(C) Larry Wall.

[-- Attachment #2: Type: application/pgp-signature, Size: 245 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Comm] OpenGL programming question (glut and fullscreen)
  2003-04-21 13:05 [Comm] OpenGL programming question (glut and fullscreen) Andrey Brindeew
@ 2003-04-21 13:19 ` Roman Savelyev
  2003-04-21 13:51   ` [Comm] " Andrey Brindeew
  2003-04-21 17:32 ` [Comm] " Roman Bogorodskiy
  1 sibling, 1 reply; 5+ messages in thread
From: Roman Savelyev @ 2003-04-21 13:19 UTC (permalink / raw)
  To: community

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Andrey Brindeew пишет:
| Приложенный к этому письму пример не работает.
Это закономерно, т.к. в письме вложений не обнаружено :)

- --
Rgds!
Roman Savelyev
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQE+o+/Zu08PPWJOeNERAgL/AJ0Zjxg+kaA8xIe5j24TudEbhiACywCgl1xs
q2LO2jtnJUwQcYBq+IyyMoM=
=05Ha
-----END PGP SIGNATURE-----



^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Comm] Re: OpenGL programming question (glut and fullscreen)
  2003-04-21 13:19 ` Roman Savelyev
@ 2003-04-21 13:51   ` Andrey Brindeew
  0 siblings, 0 replies; 5+ messages in thread
From: Andrey Brindeew @ 2003-04-21 13:51 UTC (permalink / raw)
  To: community


[-- Attachment #1.1: Type: text/plain, Size: 297 bytes --]

On Mon, Apr 21, 2003 at 05:19:21PM +0400, Roman Savelyev wrote:
> | Приложенный к этому письму пример не работает.
> Это закономерно, т.к. в письме вложений не обнаружено :)

пардон, исправляюсь :-)

-- 
WBR, Andrey Brindeew.
"No one person can understand Perl culture completely"
(C) Larry Wall.

[-- Attachment #1.2: Makefile --]
[-- Type: text/plain, Size: 125 bytes --]

# gcc -o teapot teapot.c -L/usr/X11R6/lib/ -lGL -lglut

%: %.c
	gcc -pg -o $@ $< -L/usr/lib -L/usr/X11R6/lib -L. -lGL -lglut

[-- Attachment #1.3: tezt.c --]
[-- Type: text/plain, Size: 1306 bytes --]

#include <GL/glut.h>
#include <stdio.h>

float angle = 0.0 ;

void anim(void)
{
	angle += 1.0 ;
	if (angle >= 360.0) 
		angle -= 360.0 ;

	glutPostRedisplay() ;
}

void keyboard(unsigned char key, int x, int y)
{
	switch(key) 
	{
	default:
		exit(0) ;
	}
}

void display(void) // the disp[lay function
{
	glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT) ; 
	glRotatef(angle,1.0,1.0,1.0) ;
	glutSolidCube(1.0) ;
	glutSwapBuffers() ; 
}

void reshape(int w, int h) // the reshape function
{
   glViewport(0,0,(GLsizei)w,(GLsizei)h) ;
   glMatrixMode(GL_PROJECTION) ;
   glLoadIdentity() ;
   gluPerspective(60.0,(GLfloat)w/(GLfloat)h,1.0,30.0) ;
   glMatrixMode(GL_MODELVIEW) ;
   glLoadIdentity() ;
   glTranslatef(0.0,0.0,-3.6) ;
}

int main (int argc, char** argv)
{
	glutInit(&argc, argv) ;
	glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH) ; 

	glutGameModeString("1152x864:24") ;
	if (glutGameModeGet(GLUT_GAME_MODE_WIDTH) != -1)  // if the width is different to -1
	{
		glutEnterGameMode()   ;		// enter full screen mode
		glutDisplayFunc(display) ;
		glutReshapeFunc(reshape) ;
		glutIdleFunc(anim) ;
		glutKeyboardFunc(keyboard) ;
		glutMainLoop() ;
	}
	else							// print out that this mode is not available
		printf("The current mode is not supported in this system\n") ;
	return 0 ;
}

[-- Attachment #2: Type: application/pgp-signature, Size: 245 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Comm] OpenGL programming question (glut and fullscreen)
  2003-04-21 13:05 [Comm] OpenGL programming question (glut and fullscreen) Andrey Brindeew
  2003-04-21 13:19 ` Roman Savelyev
@ 2003-04-21 17:32 ` Roman Bogorodskiy
  2003-04-21 18:26   ` [Comm] " Andrey Brindeew
  1 sibling, 1 reply; 5+ messages in thread
From: Roman Bogorodskiy @ 2003-04-21 17:32 UTC (permalink / raw)
  To: community

[-- Attachment #1: Type: text/plain, Size: 335 bytes --]

Andrey wrote:

> У меня программа всегда ругается на то, что режим не
> поддерживается, хотя я выставил тот режим, в котором работает
> X-сервер (как бы его данные в работающей программе выцепить :((
> ).

Я убрал проверку (glutGameModeGet(GLUT_GAME_MODE_WIDTH) != -1) -
заработало в полноэкранном режиме. 

-Roman Bogorodskiy [Novel]

[-- Attachment #2: patch --]
[-- Type: application/octet-stream, Size: 689 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Comm] Re: OpenGL programming question (glut and fullscreen)
  2003-04-21 17:32 ` [Comm] " Roman Bogorodskiy
@ 2003-04-21 18:26   ` Andrey Brindeew
  0 siblings, 0 replies; 5+ messages in thread
From: Andrey Brindeew @ 2003-04-21 18:26 UTC (permalink / raw)
  To: community

[-- Attachment #1: Type: text/plain, Size: 360 bytes --]

On Mon, Apr 21, 2003 at 09:32:23PM +0400, Roman Bogorodskiy wrote:
> Я убрал проверку (glutGameModeGet(GLUT_GAME_MODE_WIDTH) != -1) -
> заработало в полноэкранном режиме. 

да, но разрешение при этом почему-то не изменяется.
Или это багофича новых (4.xx) Иксов?

-- 
WBR, Andrey Brindeew.
"No one person can understand Perl culture completely"
(C) Larry Wall.

[-- Attachment #2: Type: application/pgp-signature, Size: 245 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2003-04-21 18:26 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-04-21 13:05 [Comm] OpenGL programming question (glut and fullscreen) Andrey Brindeew
2003-04-21 13:19 ` Roman Savelyev
2003-04-21 13:51   ` [Comm] " Andrey Brindeew
2003-04-21 17:32 ` [Comm] " Roman Bogorodskiy
2003-04-21 18:26   ` [Comm] " Andrey Brindeew

ALT Linux Community general discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
		mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
	public-inbox-index community

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.community


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git