Quantcast
Channel: beginners - openFrameworks
Viewing all articles
Browse latest Browse all 4929

3D models blink

$
0
0

@flik9999 wrote:

Hey so I have a 3D model which I have loaded into my game. However every frame they dissappear and reappear how can I fix this?

CODE:

ofap.h

pragma once

include "ofMain.h"

include "ofxAssimpModelLoader.h"

include "meteor.h"

class ofApp : public ofBaseApp{

public:
	void setup();
	void update();
	void draw();

	void keyPressed(int key);
	void keyReleased(int key);
	void mouseMoved(int x, int y );
	void mouseDragged(int x, int y, int button);
	void mousePressed(int x, int y, int button);
	void mouseReleased(int x, int y, int button);
	void mouseEntered(int x, int y);
	void mouseExited(int x, int y);
	void windowResized(int w, int h);
	void dragEvent(ofDragInfo dragInfo);
	void gotMessage(ofMessage msg);


	ofEasyCam cam;

	//ofxAssimpModelLoader Model1;

	std::vector<meteor> Comets;//comets

};

ofapp.cpp

include "ofApp.h"

//--------------------------------------------------------------
void ofApp::setup(){
ofSetFrameRate(30);
ofSetVerticalSync(true);
ofEnableDepthTest();

cam.setDistance(120);

//Model1.loadModel("Models/asteroid.3ds", 20);

//Model1.setRotation(0, 90, 1, 0, 0);
//Model1.setRotation(1, 270, 0, 0, 1);
//Model1.setScale(0.1, 0.1, 0.1);

// Model1.setPosition(100, 100, 0);

for (int j = 0; j<Comets.size(); j++)
{
	Comets[j].setup(0, 0, 0, 0, 0 ,0, 0);
}

for (int i = 0; i < 10; i++) {
	meteor tempEnemy;
	tempEnemy.setup(ofRandom(0, 1024), ofRandom(0, 1024), 0, 1, 0, 0, 0);
	Comets.push_back(meteor(tempEnemy));
}

}

//--------------------------------------------------------------
void ofApp::update(){

}

//--------------------------------------------------------------
void ofApp::draw(){
ofBackground(255, 0, 0);

cam.begin();


cam.end();

for (int j = 0; j < Comets.size(); j++)
{
	Comets[j].draw();
}

}

//--------------------------------------------------------------
void ofApp::keyPressed(int key){

}

//--------------------------------------------------------------
void ofApp::keyReleased(int key){

}

//--------------------------------------------------------------
void ofApp::mouseMoved(int x, int y ){

}

//--------------------------------------------------------------
void ofApp::mouseDragged(int x, int y, int button){

}

//--------------------------------------------------------------
void ofApp::mousePressed(int x, int y, int button){

}

//--------------------------------------------------------------
void ofApp::mouseReleased(int x, int y, int button){

}

//--------------------------------------------------------------
void ofApp::mouseEntered(int x, int y){

}

//--------------------------------------------------------------
void ofApp::mouseExited(int x, int y){

}

//--------------------------------------------------------------
void ofApp::windowResized(int w, int h){

}

//--------------------------------------------------------------
void ofApp::gotMessage(ofMessage msg){

}

//--------------------------------------------------------------
void ofApp::dragEvent(ofDragInfo dragInfo){

}

meteor.h

pragma once

include "ofxAssimpModelLoader.h"

class meteor
{
public:
meteor();

void setup(int _x, int _y, int _z, int _sx, int _sy, int _sz, int _model);
void draw();
int x;
int y;
int z;
int speedX;
int speedY;
int speedZ;
int model;
ofxAssimpModelLoader Model1;

};

meteor.cpp

include "meteor.h"

meteor::meteor()
{
}

void meteor::setup(int _x, int _y, int _z, int _sx, int _sy, int _sz, int _model) {
x = _x; // assignes x the value of _x which is assigned in setup
y = _y; // assignes y the value of _y which is assigned in setup
z = _z;
speedX = _sx; // assignes speedX the value of _sx which is assigned in setup
speedY = _sy; // assignes speedY the value of _sy which is assigned in setup
model = _model; //Assignes sprite the value of _sprite which is assigned in setup

				//Loads in the asteroid model
Model1.loadModel("Models/asteroid.3ds", 0);
Model1.setScale(0.1, 0.1, 0.1);

}

void meteor::draw() {
Model1.setPosition(x, y, z);
Model1.drawFaces();

x = x + speedX;
y = y + speedY;
z = z + speedZ;

}

Posts: 2

Participants: 2

Read full topic


Viewing all articles
Browse latest Browse all 4929

Trending Articles