Skocz do zawartości

[C++] OpenGL - odbicia i bufor szablonowy


bkdi

Polecane posty

Witam, chciałbym w takiej scenie jak ta uzyskać odbicie stożka w półprzeźroczystej bryle (poniżej scena i kod):

http://img202.imageshack.us/i/scenau.jpg/

#include "StdAfx.h"
#include "openGLview.h"


openGLview::openGLview(void)
{
       stozek_dol = new CStozek(0,0,0,12,10,0.2,0.9,0,1);
       blat = new CProstopadloscian(200,6,100,0,-15,0,1,1,1,0.3);
}

openGLview::~openGLview(void)
{
}



void openGLview::display(void) 
{
       glEnable(GL_DEPTH_TEST); //uruchamiamy bufor głebi
       glClearColor(0,0.0,0,0);//ustawiamy kolor tła na czarny
       glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); //czyoecimy bufory
       glEnable(GL_DEPTH_TEST); //uruchamiamy bufor głebi
       rysuj_figury(); //testowe rysowanie figur
       glutSwapBuffers();
       glutPostRedisplay(); // marks the current window as needing to be redisplayed.
}


void openGLview:: resize(int width, int height) 
{
       glViewport(0, 0, width, height);
       glMatrixMode(GL_PROJECTION);
       glLoadIdentity();
       gluPerspective(45.0, (float)width / (float)height, 0.1, 1000.0);
       glMatrixMode(GL_MODELVIEW);
       glLoadIdentity();
       gluLookAt( // ustawienie pocztkowe kamery
               0.0, 0.0, 250.0, // eye location
               0.0, 0.0, 0.0, // center location
               0.0, 1.0, 0.0); // up vector
}

void openGLview::rysuj_figury(void) 
{
       stozek_dol->kat=90;
       stozek_dol->Rysuj();
       glEnable(GL_BLEND);
       glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
               blat->Rysuj();
       glDisable(GL_BLEND);
};

Ale to daje ten sam efekt co powyżej.

 

Proszę o pomoc!

Link do komentarza
Udostępnij na innych stronach

No tak, ale jak chce się osiągnąć szybki efekt (może nawet trochę gorszy :) ), to taki długi tutorial ma odwrotne działanie (czuje się nawał roboty :) ). A jak jest podstawowa metoda opisana na osiągnięcie takiego efektu to dla niewymagających złoty środek.

Link do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

×
×
  • Utwórz nowe...