rusting_engine 2.4.1

Vulkan 3D game engine with GPU-accelerated physics for massive physics-heavy scenes
pub use rusting_core::components::{
    AmbientLight, Antialiasing, AxisLock, Camera, Children, Collider,
    ColliderShape, CollisionLayers, CullingMode, DirectionalLight,
    GlobalTransform, Name, ObjectClasses, Parent, PhysicsBackendStatus,
    PhysicsBody, PhysicsSettings, PhysicsSolver, PointLight, Projection,
    QualityProfile, RenderBounds, RenderSettings, RigidBody, RigidBodyKind,
    SceneId, ShadowQuality, SimulationClass, SkyLight, SpotLight, ToneMapper,
    ToneMapping, Visibility,
};

use bevy_ecs::component::Component;

use crate::assets::{Handle, MaterialAsset, MeshAsset};

/// Semantic rendering component. GPU batches are derived during extraction.
#[derive(Component, Clone, Copy, Debug, PartialEq, Eq)]
pub struct MeshRenderer {
    pub mesh: Handle<MeshAsset>,
    pub material: Handle<MaterialAsset>,
    pub cast_shadows: bool,
    pub receive_shadows: bool,
}