mirror of
https://github.com/overte-org/overte.git
synced 2025-08-11 06:22:10 +02:00
Added preview deplacement + fixed locking issue
This commit is contained in:
parent
be6e7d0e97
commit
6fcb802a94
3 changed files with 31 additions and 20 deletions
|
@ -972,7 +972,6 @@ function mousePressEvent(event) {
|
|||
print("placing import...");
|
||||
placeImport();
|
||||
showImport(false);
|
||||
pasteMode = false;
|
||||
moveTools();
|
||||
return;
|
||||
}
|
||||
|
@ -1177,7 +1176,6 @@ function menuItemEvent(menuItem) {
|
|||
print("importing...");
|
||||
if (importVoxels()) {
|
||||
showImport(true);
|
||||
pasteMode = true;
|
||||
}
|
||||
moveTools();
|
||||
}
|
||||
|
@ -1512,14 +1510,27 @@ function checkControllers() {
|
|||
}
|
||||
|
||||
function update(deltaTime) {
|
||||
var newWindowDimensions = Controller.getViewportDimensions();
|
||||
if (newWindowDimensions.x != windowDimensions.x || newWindowDimensions.y != windowDimensions.y) {
|
||||
windowDimensions = newWindowDimensions;
|
||||
moveTools();
|
||||
}
|
||||
|
||||
if (editToolsOn) {
|
||||
var newWindowDimensions = Controller.getViewportDimensions();
|
||||
if (newWindowDimensions.x != windowDimensions.x || newWindowDimensions.y != windowDimensions.y) {
|
||||
windowDimensions = newWindowDimensions;
|
||||
moveTools();
|
||||
}
|
||||
|
||||
checkControllers();
|
||||
|
||||
// Move Import Preview
|
||||
if (isImporting) {
|
||||
var position = MyAvatar.position;
|
||||
var forwardVector = Quat.getFront(MyAvatar.orientation);
|
||||
var targetPosition = Vec3.sum(position, Vec3.multiply(forwardVector, importScale));
|
||||
var newPosition = {
|
||||
x: Math.floor(targetPosition.x / importScale) * importScale,
|
||||
y: Math.floor(targetPosition.y / importScale) * importScale,
|
||||
z: Math.floor(targetPosition.z / importScale) * importScale
|
||||
}
|
||||
moveImport(newPosition);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -40,12 +40,12 @@ void LocalVoxelsOverlay::update(float deltatime) {
|
|||
_voxelSystem->init();
|
||||
}
|
||||
|
||||
_tree->lockForWrite();
|
||||
if (_visible && _voxelCount != _tree->getOctreeElementsCount()) {
|
||||
_voxelCount = _tree->getOctreeElementsCount();
|
||||
_tree->lockForWrite();
|
||||
_voxelSystem->forceRedrawEntireTree();
|
||||
_tree->unlock();
|
||||
}
|
||||
_tree->unlock();
|
||||
}
|
||||
|
||||
void LocalVoxelsOverlay::render() {
|
||||
|
|
Loading…
Reference in a new issue