summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--indra/newview/llfloatermodelpreview.cpp22
-rw-r--r--indra/newview/llmeshrepository.cpp9
2 files changed, 19 insertions, 12 deletions
diff --git a/indra/newview/llfloatermodelpreview.cpp b/indra/newview/llfloatermodelpreview.cpp
index 1e87e84eb2..73707ad2f1 100644
--- a/indra/newview/llfloatermodelpreview.cpp
+++ b/indra/newview/llfloatermodelpreview.cpp
@@ -3402,23 +3402,31 @@ BOOL LLModelPreview::render()
if (!avatar_preview)
{
- for (LLModelLoader::scene::iterator iter = mScene[mPreviewLOD].begin(); iter != mScene[mPreviewLOD].end(); ++iter)
+ //for (LLModelLoader::scene::iterator iter = mScene[mPreviewLOD].begin(); iter != mScene[mPreviewLOD].end(); ++iter)
+ for (LLMeshUploadThread::instance_list::iterator iter = mUploadData.begin(); iter != mUploadData.end(); ++iter)
{
+ LLModelInstance& instance = *iter;
+
gGL.pushMatrix();
- LLMatrix4 mat = iter->first;
+ LLMatrix4 mat = instance.mTransform;
glMultMatrixf((GLfloat*) mat.mMatrix);
- for (LLModelLoader::model_instance_list::iterator model_iter = iter->second.begin(); model_iter != iter->second.end(); ++model_iter)
+ //for (LLModelLoader::model_instance_list::iterator model_iter = iter->second.begin(); model_iter != iter->second.end(); ++model_iter)
{
- LLModelInstance& instance = *model_iter;
- LLModel* model = instance.mModel;
+ //LLModelInstance& instance = *model_iter;
+ LLModel* model = instance.mLOD[mPreviewLOD];
- if (instance.mTransform != mat)
+ if (!model)
{
- llerrs << "WTF?" << llendl;
+ continue;
}
+ //if (instance.mTransform != mat)
+ //{
+ // llerrs << "WTF?" << llendl;
+ //}
+
if (render_mesh)
{
for (U32 i = 0; i < mVertexBuffer[mPreviewLOD][model].size(); ++i)
diff --git a/indra/newview/llmeshrepository.cpp b/indra/newview/llmeshrepository.cpp
index 5e95376830..72019d8de8 100644
--- a/indra/newview/llmeshrepository.cpp
+++ b/indra/newview/llmeshrepository.cpp
@@ -2954,13 +2954,12 @@ LLSD LLMeshUploadThread::createObject(LLModelInstance& instance)
perm.setOwnerAndGroup(gAgent.getID(), gAgent.getID(), LLUUID::null, false);
perm.setCreator(gAgent.getID());
- perm.initMasks(PERM_ITEM_UNRESTRICTED, //base
- PERM_ITEM_UNRESTRICTED, //owner
+ perm.initMasks(PERM_ITEM_UNRESTRICTED | PERM_MOVE, //base
+ PERM_ITEM_UNRESTRICTED | PERM_MOVE, //owner
LLFloaterPerms::getEveryonePerms(),
LLFloaterPerms::getGroupPerms(),
- LLFloaterPerms::getNextOwnerPerms());
-
-
+ LLFloaterPerms::getNextOwnerPerms());
+
object_params["permissions"] = ll_create_sd_from_permissions(perm);
object_params["physics_shape_type"] = (U8)(LLViewerObject::PHYSICS_SHAPE_CONVEX_HULL);