mirror of
https://github.com/overte-org/overte.git
synced 2025-08-10 01:24:36 +02:00
terse log when ownership changes
This commit is contained in:
parent
774e2ab6d6
commit
39b92d2b52
7 changed files with 27 additions and 6 deletions
|
@ -10,6 +10,7 @@
|
||||||
//
|
//
|
||||||
|
|
||||||
|
|
||||||
|
#include <ObjectMotionState.h>
|
||||||
#include "RenderableEntityItem.h"
|
#include "RenderableEntityItem.h"
|
||||||
|
|
||||||
namespace render {
|
namespace render {
|
||||||
|
@ -39,6 +40,3 @@ namespace render {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -62,5 +62,6 @@ private: \
|
||||||
SimpleRenderableEntityItem _renderHelper;
|
SimpleRenderableEntityItem _renderHelper;
|
||||||
|
|
||||||
|
|
||||||
|
void makeEntityItemStatusGetters(EntityItem* entity, render::Item::Status::Getters& statusGetters);
|
||||||
|
|
||||||
#endif // hifi_RenderableEntityItem_h
|
#endif // hifi_RenderableEntityItem_h
|
||||||
|
|
|
@ -18,10 +18,10 @@
|
||||||
#include <Model.h>
|
#include <Model.h>
|
||||||
#include <PerfStat.h>
|
#include <PerfStat.h>
|
||||||
#include <render/Scene.h>
|
#include <render/Scene.h>
|
||||||
#include <ObjectMotionState.h>
|
|
||||||
|
|
||||||
#include "EntityTreeRenderer.h"
|
#include "EntityTreeRenderer.h"
|
||||||
#include "EntitiesRendererLogging.h"
|
#include "EntitiesRendererLogging.h"
|
||||||
|
#include "RenderableEntityItem.h"
|
||||||
#include "RenderableModelEntityItem.h"
|
#include "RenderableModelEntityItem.h"
|
||||||
|
|
||||||
EntityItemPointer RenderableModelEntityItem::factory(const EntityItemID& entityID, const EntityItemProperties& properties) {
|
EntityItemPointer RenderableModelEntityItem::factory(const EntityItemID& entityID, const EntityItemProperties& properties) {
|
||||||
|
@ -180,7 +180,7 @@ namespace render {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void makeEntityItemStatusGetters(RenderableModelEntityItem* entity, render::Item::Status::Getters& statusGetters) {
|
void makeEntityItemStatusGetters(EntityItem* entity, render::Item::Status::Getters& statusGetters) {
|
||||||
statusGetters.push_back([entity] () -> render::Item::Status::Value {
|
statusGetters.push_back([entity] () -> render::Item::Status::Value {
|
||||||
quint64 delta = usecTimestampNow() - entity->getLastEditedFromRemote();
|
quint64 delta = usecTimestampNow() - entity->getLastEditedFromRemote();
|
||||||
const float WAIT_THRESHOLD_INV = 1.0f / (0.2f * USECS_PER_SECOND);
|
const float WAIT_THRESHOLD_INV = 1.0f / (0.2f * USECS_PER_SECOND);
|
||||||
|
|
|
@ -139,6 +139,9 @@ bool RenderableParticleEffectEntityItem::addToScene(EntityItemPointer self,
|
||||||
_renderItemId = scene->allocateID();
|
_renderItemId = scene->allocateID();
|
||||||
auto renderData = ParticlePayload::Pointer(particlePayload);
|
auto renderData = ParticlePayload::Pointer(particlePayload);
|
||||||
auto renderPayload = render::PayloadPointer(new ParticlePayload::Payload(renderData));
|
auto renderPayload = render::PayloadPointer(new ParticlePayload::Payload(renderData));
|
||||||
|
render::Item::Status::Getters statusGetters;
|
||||||
|
makeEntityItemStatusGetters(this, statusGetters);
|
||||||
|
renderPayload->addStatusGetters(statusGetters);
|
||||||
pendingChanges.resetItem(_renderItemId, renderPayload);
|
pendingChanges.resetItem(_renderItemId, renderPayload);
|
||||||
_scene = scene;
|
_scene = scene;
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -549,6 +549,10 @@ bool RenderablePolyVoxEntityItem::addToScene(EntityItemPointer self,
|
||||||
auto renderData = PolyVoxPayload::Pointer(renderItem);
|
auto renderData = PolyVoxPayload::Pointer(renderItem);
|
||||||
auto renderPayload = std::make_shared<PolyVoxPayload::Payload>(renderData);
|
auto renderPayload = std::make_shared<PolyVoxPayload::Payload>(renderData);
|
||||||
|
|
||||||
|
render::Item::Status::Getters statusGetters;
|
||||||
|
makeEntityItemStatusGetters(this, statusGetters);
|
||||||
|
renderPayload->addStatusGetters(statusGetters);
|
||||||
|
|
||||||
pendingChanges.resetItem(_myItem, renderPayload);
|
pendingChanges.resetItem(_myItem, renderPayload);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -19,6 +19,8 @@
|
||||||
#include <GeometryCache.h>
|
#include <GeometryCache.h>
|
||||||
#include <PerfStat.h>
|
#include <PerfStat.h>
|
||||||
|
|
||||||
|
#include "RenderableEntityItem.h"
|
||||||
|
|
||||||
// Sphere entities should fit inside a cube entity of the same size, so a sphere that has dimensions 1x1x1
|
// Sphere entities should fit inside a cube entity of the same size, so a sphere that has dimensions 1x1x1
|
||||||
// is a half unit sphere. However, the geometry cache renders a UNIT sphere, so we need to scale down.
|
// is a half unit sphere. However, the geometry cache renders a UNIT sphere, so we need to scale down.
|
||||||
static const float SPHERE_ENTITY_SCALE = 0.5f;
|
static const float SPHERE_ENTITY_SCALE = 0.5f;
|
||||||
|
@ -112,6 +114,8 @@ void RenderableZoneEntityItem::render(RenderArgs* args) {
|
||||||
render::ScenePointer scene = AbstractViewStateInterface::instance()->getMain3DScene();
|
render::ScenePointer scene = AbstractViewStateInterface::instance()->getMain3DScene();
|
||||||
render::PendingChanges pendingChanges;
|
render::PendingChanges pendingChanges;
|
||||||
_model->removeFromScene(scene, pendingChanges);
|
_model->removeFromScene(scene, pendingChanges);
|
||||||
|
render::Item::Status::Getters statusGetters;
|
||||||
|
makeEntityItemStatusGetters(this, statusGetters);
|
||||||
_model->addToScene(scene, pendingChanges, false);
|
_model->addToScene(scene, pendingChanges, false);
|
||||||
|
|
||||||
scene->enqueuePendingChanges(pendingChanges);
|
scene->enqueuePendingChanges(pendingChanges);
|
||||||
|
@ -203,7 +207,11 @@ bool RenderableZoneEntityItem::addToScene(EntityItemPointer self, std::shared_pt
|
||||||
|
|
||||||
auto renderData = std::make_shared<RenderableZoneEntityItemMeta>(self);
|
auto renderData = std::make_shared<RenderableZoneEntityItemMeta>(self);
|
||||||
auto renderPayload = std::make_shared<RenderableZoneEntityItemMeta::Payload>(renderData);
|
auto renderPayload = std::make_shared<RenderableZoneEntityItemMeta::Payload>(renderData);
|
||||||
|
|
||||||
|
render::Item::Status::Getters statusGetters;
|
||||||
|
makeEntityItemStatusGetters(this, statusGetters);
|
||||||
|
renderPayload->addStatusGetters(statusGetters);
|
||||||
|
|
||||||
pendingChanges.resetItem(_myMetaItem, renderPayload);
|
pendingChanges.resetItem(_myMetaItem, renderPayload);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -198,6 +198,13 @@ bool EntityTree::updateEntityWithElement(EntityItemPointer entity, const EntityI
|
||||||
properties.setAngularVelocityChanged(false);
|
properties.setAngularVelocityChanged(false);
|
||||||
properties.setAccelerationChanged(false);
|
properties.setAccelerationChanged(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (wantTerseEditLogging()) {
|
||||||
|
if (properties.simulationOwnerChanged()) {
|
||||||
|
QString itemName = entity->getName() != "" ? entity->getName() : entity->getID().toString();
|
||||||
|
qCDebug(entities) << "sim ownership for" << itemName << "is now" << senderID;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// else client accepts what the server says
|
// else client accepts what the server says
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue