diff --git a/include/Engine/Rendering/ModelJob.h b/include/Engine/Rendering/ModelJob.h
index dc4c8cb5..085db98e 100644
--- a/include/Engine/Rendering/ModelJob.h
+++ b/include/Engine/Rendering/ModelJob.h
@@ -121,12 +121,17 @@ struct ModelJob : RenderJob
FillPercentage = fillPercentage;
IsShielded = isShielded;
+
+ if (world->HasComponent(Entity, "Unpickable")) {
+ NotPickable = true;
+ }
+
if (model->IsSkinned()) {
Skeleton = Model->m_RawModel->m_Skeleton;
if (Skeleton != nullptr) {
-
EntityWrapper entityWrapper = EntityWrapper(world, modelComponent.EntityID);
+
if(Skeleton->BlendTrees.find(entityWrapper) != Skeleton->BlendTrees.end()) {
BlendTree = Skeleton->BlendTrees.at(entityWrapper);
@@ -164,6 +169,7 @@ struct ModelJob : RenderJob
float FillPercentage = 0.0;
bool IsShielded;
bool Shadow;
+ bool NotPickable = false;
void CalculateHash() override
{
diff --git a/resources/Schema/Components.xsd b/resources/Schema/Components.xsd
index bc6da932..7210ad3f 100644
--- a/resources/Schema/Components.xsd
+++ b/resources/Schema/Components.xsd
@@ -68,4 +68,5 @@
+
\ No newline at end of file
diff --git a/resources/Schema/Components/Unpickable.xml b/resources/Schema/Components/Unpickable.xml
new file mode 100644
index 00000000..07fe9a90
--- /dev/null
+++ b/resources/Schema/Components/Unpickable.xml
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/resources/Schema/Components/Unpickable.xsd b/resources/Schema/Components/Unpickable.xsd
new file mode 100644
index 00000000..114886a8
--- /dev/null
+++ b/resources/Schema/Components/Unpickable.xsd
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+ Makes the entity unpickable
+
+
+
\ No newline at end of file
diff --git a/resources/Schema/Types/Entity.xsd b/resources/Schema/Types/Entity.xsd
index c0ac15aa..91592163 100644
--- a/resources/Schema/Types/Entity.xsd
+++ b/resources/Schema/Types/Entity.xsd
@@ -71,6 +71,7 @@
+
diff --git a/src/Engine/Rendering/PickingPass.cpp b/src/Engine/Rendering/PickingPass.cpp
index 820c184e..f6343101 100644
--- a/src/Engine/Rendering/PickingPass.cpp
+++ b/src/Engine/Rendering/PickingPass.cpp
@@ -76,6 +76,11 @@ void PickingPass::Draw(RenderScene& scene)
auto modelJob = std::dynamic_pointer_cast(job);
if (modelJob) {
+ if(modelJob->NotPickable) {
+ continue;
+ }
+
+
int pickColor[2] = { m_ColorCounter[0], m_ColorCounter[1] };
PickingInfo pickInfo;