git-svn-id: svn://db.shs.com.ru/libs@636 a8b55f48-bf90-11e4-a774-851b48703e85
This commit is contained in:
@@ -60,6 +60,15 @@ RendererService::RendererService(Renderer * r_): r(r_) {
|
||||
omni_mesh_f = Primitive::ellipsoidFrame(2, 1);
|
||||
omni_mesh ->scalePoints(1.5);
|
||||
omni_mesh_f->scalePoints(1.5);
|
||||
cone_mesh = Primitive::cone(8, 1., 1., 1.);
|
||||
cone_mesh_f = Primitive::coneFrame(8, 1., 1., 1.);
|
||||
QMatrix4x4 mat;
|
||||
mat.rotate(90, 0,1,0);
|
||||
mat.translate(0,0,2);
|
||||
mat.rotate(180, 1,0,0);
|
||||
cone_mesh ->transformPoints(mat);
|
||||
cone_mesh_f->transformPoints(mat);
|
||||
|
||||
box_mesh ->scalePoints(1.3);
|
||||
omni_mesh ->scalePoints(1.3);
|
||||
|
||||
@@ -98,6 +107,8 @@ RendererService::~RendererService() {
|
||||
delete box_mesh_f;
|
||||
delete omni_mesh;
|
||||
delete omni_mesh_f;
|
||||
delete cone_mesh;
|
||||
delete cone_mesh_f;
|
||||
delete axis_camera;
|
||||
delete axis_mesh;
|
||||
delete handle_move_mesh;
|
||||
@@ -143,7 +154,7 @@ void RendererService::fillXYZObjects() {
|
||||
|
||||
|
||||
void RendererService::fillOmniObjects() {
|
||||
QList<Light*> ll = r->view->scene()->lights_used;
|
||||
QList<Light*> ll = r->view->scene()->lights_used.value(Light::Omni);
|
||||
Object o;
|
||||
cur_objects.clear();
|
||||
foreach (Light * l, ll) {
|
||||
@@ -247,6 +258,15 @@ void RendererService::drawCurrentHandleObjects() {
|
||||
}
|
||||
|
||||
|
||||
void RendererService::drawLights() {
|
||||
fillOmniObjects();
|
||||
omni_mesh->loadObjects(r->view, cur_objects);
|
||||
r->fillSelectionsBuffer(r->rend_selection.cur_selections_, light2objectList(r->view->scene_->lights_used.value(Light::Omni)));
|
||||
omni_mesh->loadSelections(r->view, r->rend_selection.cur_selections_);
|
||||
omni_mesh->draw(r->view, cur_objects.size());
|
||||
}
|
||||
|
||||
|
||||
void RendererService::setObjectsColor(QVector<Object> & ol, QColor col) {
|
||||
QVector4D cv = QColor2QVector(col);
|
||||
for (int i = 0; i < ol.size(); ++i)
|
||||
@@ -279,7 +299,7 @@ void RendererService::renderService() {
|
||||
|
||||
setObjectsColor(cur_objects, Qt::black);
|
||||
prog->setUniformValue("line_width", 1.f);
|
||||
prog->setUniformValue("z_offset", -1.E-3f);
|
||||
prog->setUniformValue("z_offset", -1.E-2f);
|
||||
omni_mesh_f->loadObjects(f, cur_objects);
|
||||
omni_mesh_f->draw(f, cur_objects.size());
|
||||
|
||||
|
||||
Reference in New Issue
Block a user