3d etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
3d etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

29 Kasım 2009 Pazar

OpenGl - 3D

//3D cismi öteleme,döndürme,yansıtma ve ölçekleme
#include <GL/glut.h>
#include <GL/gl.h>
#include <GL/glu.h>
#include <math.h>
#include <stdio.h>

void menu(void);
void cizim();
void olcekayar();
void otelemeayar();
void yansimaayar();
void dondurmeayar();

float deger1;
float deger2;
float deger3;
float matris[8][4]={{0,0,1,1},
{1,0,1,1},
{1,0,0,1},
{0,0,0,1},
{1,1,1,1},
{0,1,1,1},
{1,1,0,1},
{0,1,0,1}};


int main(int argc, char **argv)
{
int sec;

menu();
scanf("%d",&sec);

glutInit(&argc, argv);

glutInitWindowSize(1000,1000);

if(sec==1){

olcekayar();
glutCreateWindow("OLCEKLENMIS 3D");
glutDisplayFunc(cizim);

}

else if(sec==2){

otelemeayar();
glutCreateWindow("OTELENMIS 3D");
glutDisplayFunc(cizim);

}

else if(sec==3){

yansimaayar();
glutCreateWindow("YANSIMIS 3D");
glutDisplayFunc(cizim);

}

else if(sec==4){

dondurmeayar();
glutCreateWindow("DONDURULMUS 3D");
glutDisplayFunc(cizim);

}

glutMainLoop();

return(0);
}

OpenGl - 3D Ölçekleme

void olcekayar(){

int i,j;

printf("\nolcekleme x degerini giriniz(0.x seklinde):");
scanf("%f",&deger1);
printf("\nolcekleme y degerini giriniz(0.x seklinde):");
scanf("%f",&deger2);
printf("\nolcekleme z degerini giriniz(0.x seklinde):");
scanf("%f",&deger3);

for(i=0;i<8;i++)
matris[i][0]=matris[i][0]*deger1;

for(i=0;i<8;i++)
matris[i][1]=matris[i][1]*deger2;

for(i=0;i<8;i++)
matris[i][2]=matris[i][2]*deger3;

for(i=0;i<8;i++){
printf("\n");
for(j=0;j<4;j++){
printf("%f ",matris[i][j]);}}
}

OpenGl - 3D Yansıma

void yansimaayar(){

int i,secim,j;

printf("\nhangi duzleme gore yansima\n");
printf("\n1- yz duzlemine gore yansima\n");
printf("\n2- xz duzlemine gore yansima\n");
printf("\n3- xy duzlemine gore yansima\n");
scanf("%d",&secim);


if(secim==1){

for(i=0;i<8;i++)
matris[i][0]=matris[i][0]*(-1);
}

else if(secim==2){
for(i=0;i<8;i++)
matris[i][1]=matris[i][1]*(-1);
}
else if(secim==3){
for(i=0;i<8;i++)
matris[i][2]=matris[i][2]*(-1);
}

for(i=0;i<8;i++){
printf("\n");
for(j=0;j<4;j++){
printf("%f ",matris[i][j]);}}
}

OpenGl - 3D Döndürme

void dondurmeayar(){

int i,j,k,secim;
float mtrs[8][4]={0},aci;

printf("\ndondurme acisini giriniz:");
scanf("%f",&aci);

printf("\nhangi eksen etrafinda dondurme\n");
printf("\n1- x ekseni etrafinda dondurme\n");
printf("\n2- y ekseni etrafinda dondurme\n");
printf("\n3- z ekseni etrafinda dondurme\n");
scanf("%d",&secim);


if(secim==1){
float deger[4][4]={{1,0,0,0},
{0,cos(aci*3.14/180),sin(aci*3.14/180),0},
{0,sin(aci*3.14/180)*(-1),cos(aci*3.14/180),0},
{0,0,0,1}};

for(i=0;i<8;i++)
for(j=0;j<4;j++)
for(k=0;k<4;k++)
mtrs[i][j]=mtrs[i][j] + (matris[i][k])*(deger[k][j]);
}

else if(secim==2){
float deger[4][4]={{cos(aci*3.14/180),0,sin(aci*3.14/180)*(-1),0},
{0,1,0,0},
{sin(aci*3.14/180),0,cos(aci*3.14/180),0},
{0,0,0,1}};

for(i=0;i<8;i++)
for(j=0;j<4;j++)
for(k=0;k<4;k++)
mtrs[i][j]=mtrs[i][j] + (matris[i][k])*(deger[k][j]);
}

else if(secim==3){
float deger[4][4]={{cos(aci*3.14/180),sin(aci*3.14/180),0,0},
{sin(aci*3.14/180)*(-1),cos(aci*3.14/180),0,0},
{0,0,1,0},
{0,0,0,1}};

for(i=0;i<8;i++)
for(j=0;j<4;j++)
for(k=0;k<4;k++)
mtrs[i][j]=mtrs[i][j] + (matris[i][k])*(deger[k][j]);
}


for(i=0;i<8;i++)
for(j=0;j<4;j++)
matris[i][j]=mtrs[i][j];

for(i=0;i<8;i++){
printf("\n");
for(j=0;j<4;j++){
printf("%f ",matris[i][j]);}}

}

OpenGl - 3D Öteleme

void otelemeayar(){

int i,j;

printf("\noteleme degerini giriniz:(0.x seklinde)");
scanf("%f",&deger1);
printf("\noteleme degerini giriniz:(0.x seklinde)");
scanf("%f",&deger2);
printf("\noteleme degerini giriniz:(0.x seklinde)");
scanf("%f",&deger3);


for(i=0;i<8;i++)
matris[i][0]=matris[i][0]+deger1;

for(i=0;i<8;i++)
matris[i][1]=matris[i][1]+deger2;

for(i=0;i<8;i++)
matris[i][2]=matris[i][2]+deger3;

for(i=0;i<8;i++){
printf("\n");
for(j=0;j<4;j++){
printf("%f ",matris[i][j]);}}
}

OpenGl - 3D Menü ve Çizim Fonksiyonu

void menu(void){
printf("\n 1- OLCEKLEME\n");
printf("2- OTELEME\n");
printf("3- YANSIMA\n");
printf("4- DONDURME\n");
printf("seciminizi giriniz");
}


void cizim(){//çizim

glClear(GL_COLOR_BUFFER_BIT);
glColor3f (1,1,1);
glBegin(GL_POLYGON);
glVertex3f(matris[0][0], matris[0][1], matris[0][2]);
glVertex3f(matris[1][0], matris[1][1], matris[1][2]);
glVertex3f(matris[2][0], matris[2][1], matris[2][2]);
glVertex3f(matris[3][0], matris[3][1], matris[3][2]);
glVertex3f(matris[4][0], matris[4][1], matris[4][2]);
glVertex3f(matris[5][0], matris[5][1], matris[5][2]);
glVertex3f(matris[6][0], matris[6][1], matris[6][2]);
glVertex3f(matris[7][0], matris[7][1], matris[7][2]);

glEnd();

glFlush();
}

20 Ekim 2009 Salı

UP'ladım

Tür: Komedi/Macera/Animasyon/3D
Gösterim Tarihi: 16 Ekim 2009
Yönetmen: Pete Docter, Bob Petersen
Senaryo: Bob Petersen
Müzik: Michael Giacchino
Yapım: 2009,ABD,96 dk

IMDB puanı: 8.6
Hayatı boyunca yaşamak istediği macera hayalini gerçekleştirmek için evine binlerce balon bağlayıp Güney Amerika'nın vahşi doğasına doğru yolculuğa çıkan 78 yaşındaki baloncu Carl Fredricksen'ın hikayesinin anlatıldığı yeni bir komedi.

Ancak Carl, yolculuğa başladıktan sonra en büyük kabusunu da yanında götürmekte olduğunu fark eder: fazlasıyla iyimser, doğa kaşifi 8 yaşındaki Russel'ı.

Sinema salonlarında daha fazla 3 boyutlu film gösterilmesi için Hollywood’un son dönemdeki çabasına katkıda bulunmak amaçlı, bu yıl Cannes Film Festivali’nin açılış filmi olan Up/Yukarı Bak'ın Türkçe seslendirmesinde Erol Günaydın baş karaktere sesini verecek.

İzlediğim en iyi animasyonlardan.Komediden çok macera var bu filmde; seslendirme,konusu ve efektler çok iyi.İzlemenizi tavsiye ederim,3D izlemedim ama onun da seyri başkadır.Benim bu filme puanım 9...