89 lines
1.6 KiB
C++
89 lines
1.6 KiB
C++
/*
|
|
* $Id: appearance.h,v 1.11 2002/07/19 20:33:28 msell Exp $
|
|
*
|
|
*
|
|
* $Log: appearance.h,v $
|
|
* Revision 1.11 2002/07/19 20:33:28 msell
|
|
* #pragma once -> #ifndef
|
|
*
|
|
* Revision 1.10 2002/07/15 22:03:23 msell
|
|
* MultiAppearance
|
|
*
|
|
* Revision 1.9 2002/07/07 17:53:21 msell
|
|
* Legoukon alku
|
|
*
|
|
* Revision 1.8 2002/06/24 14:12:15 msell
|
|
* Nyt toimii sphere -> mesh -törmäykset, ihan tosi
|
|
*
|
|
* Revision 1.7 2002/06/20 00:21:01 jkaarlas
|
|
* materiaali- ja tekstuurihommia edistetty
|
|
*
|
|
* Revision 1.6 2002/06/17 20:49:04 msell
|
|
* free -> SDL_FreeSurface
|
|
*
|
|
* Revision 1.5 2002/06/17 19:58:08 msell
|
|
* #includeiden parantelua
|
|
*
|
|
* Revision 1.4 2002/06/04 16:28:32 msell
|
|
* #pragma once
|
|
*
|
|
* Revision 1.3 2002/06/03 23:20:43 msell
|
|
* no message
|
|
*
|
|
* Revision 1.2 2002/06/03 23:06:38 msell
|
|
* no message
|
|
*
|
|
* Revision 1.1 2002/06/02 16:57:37 msell
|
|
* Objektirakenteen pohja
|
|
*
|
|
*
|
|
*
|
|
* $Date: 2002/07/19 20:33:28 $
|
|
*
|
|
*/
|
|
|
|
#ifndef __APPEARANCE_H_INCLUDED__
|
|
#define __APPEARANCE_H_INCLUDED__
|
|
|
|
#include "main.h"
|
|
|
|
#include "material.h"
|
|
|
|
/*
|
|
* Abstract class for drawing objects
|
|
*/
|
|
class Appearance{
|
|
private:
|
|
public:
|
|
Material material;
|
|
|
|
Appearance(void);
|
|
|
|
Material* getMaterial(void);
|
|
void setMaterial(Material mat);
|
|
|
|
virtual void prepare(void);
|
|
virtual void draw(void) = 0;
|
|
};
|
|
|
|
|
|
struct appearancelist{
|
|
Appearance *data;
|
|
appearancelist *next;
|
|
};
|
|
|
|
class MultiAppearance : public Appearance{
|
|
private:
|
|
appearancelist *appearances;
|
|
|
|
public:
|
|
MultiAppearance(void);
|
|
void addAppearance(Appearance *appearance);
|
|
|
|
void prepare(void);
|
|
void draw(void);
|
|
};
|
|
|
|
#endif
|
|
|