fix enviroment

This commit is contained in:
Andrei Yankovich 2021-07-18 19:35:57 +03:00
parent f42b8a0087
commit 4b028d0997
5 changed files with 23 additions and 14 deletions

View File

@ -56,7 +56,7 @@ public:
item->setRadius(radius());
item->setAxis(_axis);
item->setAngularVelocity(lengthToSpeed(_dayLengthSec));
item->setLightForce(_radius * 30);
item->setLightForce(lengthForce());
Claster::add(item);
} else {
@ -90,7 +90,7 @@ public:
_radius = newRadius;
for (auto object: objects()) {
reinterpret_cast<DayItem*>(object)->setLightForce(_radius * 30);
reinterpret_cast<DayItem*>(object)->setLightForce(lengthForce());
reinterpret_cast<DayItem*>(object)->setRadius(_radius);
}
@ -154,8 +154,12 @@ private:
return (2 * M_PI * radius()) / length;
}
int _radius = 2000;
float _dayLengthSec = 160;
float lengthForce() const {
return _radius * 15;
}
int _radius = 1000;
float _dayLengthSec = 360;
QVector3D _axis = {1,0,0};
};

View File

@ -35,15 +35,15 @@ const IWorldItem *IWorldItem::getPlayer() const {
void IWorldItem::render(unsigned int) {
if (_playerObject->position().distanceToPoint(position()) >
_world->cameraReleativePosition().z() * 2) {
_world->cameraReleativePosition().z() * 3) {
float dX = _world->cameraReleativePosition().z() +
float dX = _world->cameraReleativePosition().z() * 2 +
(rand() % static_cast<int>(_world->cameraReleativePosition().z()));
setX(_playerObject->position().x() + dX);
float dY = (rand() % static_cast<int>(_world->cameraReleativePosition().z() * 2)
- _world->cameraReleativePosition().z());
float dY = (rand() % static_cast<int>(_world->cameraReleativePosition().z() * 3)
- _world->cameraReleativePosition().z() * 1.5);
setY(_playerObject->position().y() + dY);
}

View File

@ -17,7 +17,7 @@ Node {
PointLight {
id : sun
brightness: (model)? model.lightForce: 100
brightness: (model)? model.lightForce * model.visible: 100
color: (model)? model.color: "#ffffff"
castsShadow: (model)? model.castsShadow: 0
shadowFactor: (model)? model.shadowFactor: 0
@ -26,12 +26,17 @@ Node {
shadowBias: (model)? model.shadowBias: 0
shadowMapQuality: Light.ShadowMapQualityHigh
Behavior on brightness {
NumberAnimation {
duration: 5000
}
}
}
rotation: (model)? model.ratation: Qt.quaternion(0, 0, 0, 0)
scale: (model)? model.size: Qt.vector3d(0, 0, 0);
position: (model) ? model.position: Qt.vector3d(0,0,0);
visible: (model)? model.visible: false
visible: sun.brightness
}

View File

@ -21,8 +21,8 @@ namespace TestLvl {
World::World() {
setCameraReleativePosition({0,0,100});
setCameraRatation(QQuaternion::fromEulerAngles({0,0,-90}));
setCameraReleativePosition({50,0,100});
setCameraRatation(QQuaternion::fromEulerAngles({0,0,0}));
}
CRAWL::WorldRule *World::initWorldRules() {

View File

@ -29,8 +29,8 @@
namespace JungleLvl {
World::World() {
setCameraReleativePosition({0,0,100});
setCameraRatation(QQuaternion::fromEulerAngles({0,0,-90}));
setCameraReleativePosition({50,0,100});
setCameraRatation(QQuaternion::fromEulerAngles({0,0,0}));
}
CRAWL::WorldRule *World::initWorldRules() {