mirror of
https://github.com/JulianGro/overte.git
synced 2025-04-14 11:46:34 +02:00
Merge branch 'master' of https://github.com/highfidelity/hifi
This commit is contained in:
commit
343807a9f5
8 changed files with 18 additions and 15 deletions
|
@ -512,10 +512,10 @@ void AvatarMixer::handleAvatarKilled(SharedNodePointer avatarNode) {
|
|||
// we relay avatar kill packets to agents that are not upstream
|
||||
// and downstream avatar mixers, if the node that was just killed was being replicatedConnectedAgent
|
||||
return node->getActiveSocket() &&
|
||||
((node->getType() == NodeType::Agent && !node->isUpstream()) ||
|
||||
(((node->getType() == NodeType::Agent || node->getType() == NodeType::EntityScriptServer) && !node->isUpstream()) ||
|
||||
(avatarNode->isReplicated() && shouldReplicateTo(*avatarNode, *node)));
|
||||
}, [&](const SharedNodePointer& node) {
|
||||
if (node->getType() == NodeType::Agent) {
|
||||
if (node->getType() == NodeType::Agent || node->getType() == NodeType::EntityScriptServer) {
|
||||
if (!killPacket) {
|
||||
killPacket = NLPacket::create(PacketType::KillAvatar, NUM_BYTES_RFC4122_UUID + sizeof(KillAvatarReason), true);
|
||||
killPacket->write(avatarNode->getUUID().toRfc4122());
|
||||
|
|
|
@ -288,6 +288,7 @@ Rectangle {
|
|||
|
||||
Item {
|
||||
id: outputDeviceButtonContainer
|
||||
visible: false // An experiment. Will you notice?
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
anchors.left: inputDeviceButton.right
|
||||
anchors.leftMargin: 7
|
||||
|
@ -343,6 +344,7 @@ Rectangle {
|
|||
|
||||
Item {
|
||||
id: statusButtonContainer
|
||||
visible: false // An experiment. Will you notice?
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
anchors.left: outputDeviceButtonContainer.right
|
||||
anchors.leftMargin: 8
|
||||
|
|
|
@ -471,9 +471,9 @@ Menu::Menu() {
|
|||
addCheckableActionToQMenuAndActionHash(renderOptionsMenu, MenuOption::ComputeBlendshapes, 0, true,
|
||||
DependencyManager::get<ModelBlender>().data(), SLOT(setComputeBlendshapes(bool)));
|
||||
|
||||
action = addCheckableActionToQMenuAndActionHash(renderOptionsMenu, MenuOption::MeshShaders, 0, false);
|
||||
action = addCheckableActionToQMenuAndActionHash(renderOptionsMenu, MenuOption::MaterialProceduralShaders, 0, false);
|
||||
connect(action, &QAction::triggered, [action] {
|
||||
MeshPartPayload::enableMeshShaders = action->isChecked();
|
||||
MeshPartPayload::enableMaterialProceduralShaders = action->isChecked();
|
||||
});
|
||||
|
||||
{
|
||||
|
|
|
@ -228,7 +228,7 @@ namespace MenuOption {
|
|||
const QString ForceCoarsePicking = "Force Coarse Picking";
|
||||
const QString ComputeBlendshapes = "Compute Blendshapes";
|
||||
const QString HighlightTransitions = "Highlight Transitions";
|
||||
const QString MeshShaders = "Enable Procedural Materials on Meshes";
|
||||
const QString MaterialProceduralShaders = "Enable Procedural Materials";
|
||||
}
|
||||
|
||||
#endif // hifi_Menu_h
|
||||
|
|
|
@ -103,15 +103,15 @@ void setupPreferences() {
|
|||
preference->setItems(refreshRateProfiles);
|
||||
preferences->addPreference(preference);
|
||||
|
||||
auto getterMeshShaders = []() -> bool {
|
||||
auto getterMaterialProceduralShaders = []() -> bool {
|
||||
auto menu = Menu::getInstance();
|
||||
return menu->isOptionChecked(MenuOption::MeshShaders);
|
||||
return menu->isOptionChecked(MenuOption::MaterialProceduralShaders);
|
||||
};
|
||||
auto setterMeshShaders = [](bool value) {
|
||||
auto setterMaterialProceduralShaders = [](bool value) {
|
||||
auto menu = Menu::getInstance();
|
||||
menu->setIsOptionChecked(MenuOption::MeshShaders, value);
|
||||
menu->setIsOptionChecked(MenuOption::MaterialProceduralShaders, value);
|
||||
};
|
||||
preferences->addPreference(new CheckPreference(GRAPHICS_QUALITY, "Enable Procedural Materials on Meshes", getterMeshShaders, setterMeshShaders));
|
||||
preferences->addPreference(new CheckPreference(GRAPHICS_QUALITY, "Enable Procedural Materials", getterMaterialProceduralShaders, setterMaterialProceduralShaders));
|
||||
}
|
||||
{
|
||||
// Expose the Viewport Resolution Scale
|
||||
|
|
|
@ -44,6 +44,7 @@ const quint64 MIN_TIME_BETWEEN_MY_AVATAR_DATA_SENDS = USECS_PER_SECOND / CLIENT_
|
|||
* @namespace AvatarList
|
||||
*
|
||||
* @hifi-assignment-client
|
||||
* @hifi-server-entity
|
||||
*/
|
||||
|
||||
class AvatarReplicas {
|
||||
|
|
|
@ -23,10 +23,10 @@
|
|||
|
||||
#include "RenderPipelines.h"
|
||||
|
||||
static const QString ENABLE_MESH_SHADERS_STRING { "HIFI_ENABLE_MESH_SHADERS" };
|
||||
static bool ENABLE_MESH_SHADERS = QProcessEnvironment::systemEnvironment().contains(ENABLE_MESH_SHADERS_STRING);
|
||||
static const QString ENABLE_MATERIAL_PROCEDURAL_SHADERS_STRING { "HIFI_ENABLE_MATERIAL_PROCEDURAL_SHADERS" };
|
||||
static bool ENABLE_MATERIAL_PROCEDURAL_SHADERS = QProcessEnvironment::systemEnvironment().contains(ENABLE_MATERIAL_PROCEDURAL_SHADERS_STRING);
|
||||
|
||||
bool MeshPartPayload::enableMeshShaders = false;
|
||||
bool MeshPartPayload::enableMaterialProceduralShaders = false;
|
||||
|
||||
using namespace render;
|
||||
|
||||
|
@ -471,7 +471,7 @@ void ModelMeshPartPayload::render(RenderArgs* args) {
|
|||
|
||||
if (!_drawMaterials.empty() && _drawMaterials.top().material && _drawMaterials.top().material->isProcedural() &&
|
||||
_drawMaterials.top().material->isReady()) {
|
||||
if (!(enableMeshShaders && ENABLE_MESH_SHADERS)) {
|
||||
if (!(enableMaterialProceduralShaders && ENABLE_MATERIAL_PROCEDURAL_SHADERS)) {
|
||||
return;
|
||||
}
|
||||
auto procedural = std::static_pointer_cast<graphics::ProceduralMaterial>(_drawMaterials.top().material);
|
||||
|
|
|
@ -73,7 +73,7 @@ public:
|
|||
void addMaterial(graphics::MaterialLayer material);
|
||||
void removeMaterial(graphics::MaterialPointer material);
|
||||
|
||||
static bool enableMeshShaders;
|
||||
static bool enableMaterialProceduralShaders;
|
||||
|
||||
protected:
|
||||
render::ItemKey _itemKey{ render::ItemKey::Builder::opaqueShape().build() };
|
||||
|
|
Loading…
Reference in a new issue