Ejemplo n.º 1
0
PDirectionalLight::PDirectionalLight(const pchar *name, PNode *node)
    : PAbstractLight(P_LIGHT_DIRECTIONAL, name, node)
{
    P_OBJECT_INITIALIZE_PROPERTY(PAbstractLight);

    P_OBJECT_REGISTER_PROPERTY("direction",    &m_direction);
    P_OBJECT_REGISTER_PROPERTY("castshadow",   &m_castShadow);
    m_direction = pVector3(-1.0f, 0.0f, 0.0f);
}
Ejemplo n.º 2
0
PCamera::PCamera(const pchar *name, PNode *parent)
    : PNode(name, parent->scene(), parent, false)
{
    P_OBJECT_INITIALIZE_PROPERTY(PNode)
    P_OBJECT_REGISTER_PROPERTY("projection", &m_projection);
    P_OBJECT_REGISTER_PROPERTY("fixed",      &m_fixed);

    const puint32 *viewport = m_scene->context()->rect();
    setViewport(pfloat32(viewport[0]), 
                pfloat32(viewport[1]), 
                pfloat32(viewport[2]), 
                pfloat32(viewport[3])); 

    m_fixed = false;
}
Ejemplo n.º 3
0
PNode::PNode(const pchar *name, PScene *scene, PNode *parent, pbool isDrawable)
    : PObject()
{
    P_OBJECT_INITIALIZE_PROPERTY(PObject);

    P_OBJECT_REGISTER_PROPERTY("name",      &m_name);
    P_OBJECT_REGISTER_PROPERTY("transform", &m_localTransform);
    
    m_drawable = isDrawable;
    
    PASSERT(name != P_NULL);
    m_name = PString(name);

    PASSERT(scene != P_NULL);
    m_scene = scene;

    m_parent = parent;
    if (m_parent != P_NULL)
    {
        m_parent->addChild(this);
    }
}