Unity Technologies releases new Unity Vehicles package.
Unity Technologies has released the new Unity Vehicles package. 'Unity Vehicles aims to be a universal vehicle controller for ECS that covers a wide range of vehicle types and configurations. The package targets a medium level of vehicle physics realism, striking a balance between performance and fidelity.'
https://discussions.unity.com/t/unity-vehicles-experimental-package-now-available/1636923
https://i.redd.it/csnz7ggp8yye1.gif
https://i.redd.it/fh70yngp8yye1.gif
https://i.redd.it/lc1cesgp8yye1.gif
https://redd.it/1kf9bli
@r_Unity3D
Unity Technologies has released the new Unity Vehicles package. 'Unity Vehicles aims to be a universal vehicle controller for ECS that covers a wide range of vehicle types and configurations. The package targets a medium level of vehicle physics realism, striking a balance between performance and fidelity.'
https://discussions.unity.com/t/unity-vehicles-experimental-package-now-available/1636923
https://i.redd.it/csnz7ggp8yye1.gif
https://i.redd.it/fh70yngp8yye1.gif
https://i.redd.it/lc1cesgp8yye1.gif
https://redd.it/1kf9bli
@r_Unity3D
Learning C# for Unity when I am somewhat familiar with C
I am trying to learn Unity and apart from some tutorial projects I managed to make tic-tac-toe on my own. I am already familiar with C by learning on my own at first, then using it in intro to C programming at colllege and for numerical methods. I'm trying to do more advanced stuff and struggling with the noscripting because there are a lot of new concepts mostly related to OOP. I can handle the logic decently but using the logic to manipulate the objects in the scene is difficult. I can't find a good tutorial because most of them either don't focus on the noscripting side of things or try to teach C# from the absolute fundamentals, which I don't need. So is there a tutorial catered towards those new in Unity C# that are already somewhat familiar with functional programming?
https://redd.it/1kfch2w
@r_Unity3D
I am trying to learn Unity and apart from some tutorial projects I managed to make tic-tac-toe on my own. I am already familiar with C by learning on my own at first, then using it in intro to C programming at colllege and for numerical methods. I'm trying to do more advanced stuff and struggling with the noscripting because there are a lot of new concepts mostly related to OOP. I can handle the logic decently but using the logic to manipulate the objects in the scene is difficult. I can't find a good tutorial because most of them either don't focus on the noscripting side of things or try to teach C# from the absolute fundamentals, which I don't need. So is there a tutorial catered towards those new in Unity C# that are already somewhat familiar with functional programming?
https://redd.it/1kfch2w
@r_Unity3D
Reddit
From the Unity2D community on Reddit
Explore this post and more from the Unity2D community
This media is not supported in your browser
VIEW IN TELEGRAM
Creating my first visual novel with turn-based combat, city building and an unusual plot - almost alone with the help of friends. I'm learning the engine as I go, drawing animations, writing code and voicing the main character. I hope you won't judge the result too harshly.
https://redd.it/1kf89cb
@r_Unity3D
https://redd.it/1kf89cb
@r_Unity3D
This media is not supported in your browser
VIEW IN TELEGRAM
Does this level select screen make you feel like flying through space?
https://redd.it/1kffr56
@r_Unity3D
https://redd.it/1kffr56
@r_Unity3D
Object pool vs instantiate for notes (rhythm game)
Helloo, my rhythm game currently spawns notes then deletes them however earlier it was lagging when notes spawned but now it runs smoothly idk what changed. This made me wonder if I should create an object pool, I tried making one and it broke the entire system so should I change the spawn delete code for notes into an object pool? Thanks!!
https://redd.it/1kfhpsn
@r_Unity3D
Helloo, my rhythm game currently spawns notes then deletes them however earlier it was lagging when notes spawned but now it runs smoothly idk what changed. This made me wonder if I should create an object pool, I tried making one and it broke the entire system so should I change the spawn delete code for notes into an object pool? Thanks!!
https://redd.it/1kfhpsn
@r_Unity3D
Reddit
From the Unity2D community on Reddit
Explore this post and more from the Unity2D community
Issue with Rigidbody2D set to Kinematic
Hello, I’ve been working on the collision system for my 2D project and encountered an annoying issue. After changing my enemy's Rigidbody2D body type to 'Kinematic', the enemy started to slowly move through the floor, even though it should stay on top of it. This behavior is not expected, and I’m not sure what might be causing it. Does anyone have any idea? Below is the code from the class that controls the enemy's movement.
Code:
using System.Security.Cryptography;
using UnityEngine;
public class MainInimigo01 : MonoBehaviour
{
//variaveis publicas
public int life;
public float vel;
public Transform pontoA;
public Transform pontoB;
public Rigidbody2D oRigidbody;
public Animator anim;
public Collider2D oCollider;
public SpriteRenderer oSpriteRenderer;
//variaveis privadas
private bool goRight;
//metodo que é chamado frame a frame
private void Update()
{
if(life <= 0)
{
Debug.Log("Inimigo derrotado!");
Destroy(this.gameObject);
}
}
//metodo que é chamado a cada 0,02 segundos
private void FixedUpdate()
{
Movimento();
}
//metodo que executa a IAzinha do movimento e ataque do inimigo
private void Movimento()
{
if (anim.GetCurrentAnimatorStateInfo(0).IsName("inimigo_attack"))
{
return;
}
if (goRight)
{
transform.eulerAngles = new Vector3(0f, 0f, 0f);
oRigidbody.MovePosition(Vector2.MoveTowards(oRigidbody.position, pontoB.position, vel * Time.fixedDeltaTime));
if (Vector2.Distance(transform.position, pontoB.position) < 0.5f)
{
goRight = false;
}
}
else
{
transform.eulerAngles = new Vector3(0f, 180f, 0f);
oRigidbody.MovePosition(Vector2.MoveTowards(oRigidbody.position, pontoA.position, vel * Time.fixedDeltaTime));
if (Vector2.Distance(transform.position, pontoA.position) < 0.5f)
{
goRight = true;
}
}
}
}
https://redd.it/1kfjepf
@r_Unity3D
Hello, I’ve been working on the collision system for my 2D project and encountered an annoying issue. After changing my enemy's Rigidbody2D body type to 'Kinematic', the enemy started to slowly move through the floor, even though it should stay on top of it. This behavior is not expected, and I’m not sure what might be causing it. Does anyone have any idea? Below is the code from the class that controls the enemy's movement.
Code:
using System.Security.Cryptography;
using UnityEngine;
public class MainInimigo01 : MonoBehaviour
{
//variaveis publicas
public int life;
public float vel;
public Transform pontoA;
public Transform pontoB;
public Rigidbody2D oRigidbody;
public Animator anim;
public Collider2D oCollider;
public SpriteRenderer oSpriteRenderer;
//variaveis privadas
private bool goRight;
//metodo que é chamado frame a frame
private void Update()
{
if(life <= 0)
{
Debug.Log("Inimigo derrotado!");
Destroy(this.gameObject);
}
}
//metodo que é chamado a cada 0,02 segundos
private void FixedUpdate()
{
Movimento();
}
//metodo que executa a IAzinha do movimento e ataque do inimigo
private void Movimento()
{
if (anim.GetCurrentAnimatorStateInfo(0).IsName("inimigo_attack"))
{
return;
}
if (goRight)
{
transform.eulerAngles = new Vector3(0f, 0f, 0f);
oRigidbody.MovePosition(Vector2.MoveTowards(oRigidbody.position, pontoB.position, vel * Time.fixedDeltaTime));
if (Vector2.Distance(transform.position, pontoB.position) < 0.5f)
{
goRight = false;
}
}
else
{
transform.eulerAngles = new Vector3(0f, 180f, 0f);
oRigidbody.MovePosition(Vector2.MoveTowards(oRigidbody.position, pontoA.position, vel * Time.fixedDeltaTime));
if (Vector2.Distance(transform.position, pontoA.position) < 0.5f)
{
goRight = true;
}
}
}
}
https://redd.it/1kfjepf
@r_Unity3D
Reddit
From the Unity2D community on Reddit
Explore this post and more from the Unity2D community
Showcase I made a game in JUST 1 WEEK – with Dash Mechanics, Collectibles, and Custom Levels! Would love feedback!
Here’s the video where I show the entire chaotic and fun process:
https://youtu.be/AVMWDrohTcc
It’s got a humorous devlog vibe with memes, glitches, and some mildly cursed debugging moments. If you enjoy light-hearted but technical devlogs (think Dani / Sam Hogan style), you might enjoy this one.
I’d really appreciate any feedback — on the video, game idea, or how I could make future devlogs better.
https://redd.it/1kfixp2
@r_Unity3D
Here’s the video where I show the entire chaotic and fun process:
https://youtu.be/AVMWDrohTcc
It’s got a humorous devlog vibe with memes, glitches, and some mildly cursed debugging moments. If you enjoy light-hearted but technical devlogs (think Dani / Sam Hogan style), you might enjoy this one.
I’d really appreciate any feedback — on the video, game idea, or how I could make future devlogs better.
https://redd.it/1kfixp2
@r_Unity3D
YouTube
I Made a Game in Just 7 Days… Game Dev Challenge
🎮 I Made a Game in Just 7 Days! (Game Dev Challenge)
Welcome to my first-ever game devlog on Aziz the GameDev! In this video, I take on the ultimate challenge: building an entire Unity indie game in just 7 days. From crafting dash-style mechanics to designing…
Welcome to my first-ever game devlog on Aziz the GameDev! In this video, I take on the ultimate challenge: building an entire Unity indie game in just 7 days. From crafting dash-style mechanics to designing…
I finally released my first game on Steam — Crazy Robot Ball
Hey r/Unity2D!
After months of learning, tweaking, debugging, and way too much coffee... I’m super excited (and a little nervous) to say I just released my very first game on Steam: Crazy Robot Ball! 🎉
It’s built entirely in Unity2D, and it’s been such a wild learning experience — from physics to UI, controller support to Steam integration. The game is a turn-based football game where you control a team of unique robots.
I’m proud of how far I’ve come, and just wanted to say thank you to this community. I’ve learned so much just from browsing posts and reading feedback here. You all rock.
If anyone wants to check it out or has any advice/feedback, I’d love to hear from you!
Here’s the Steam page if you're curious: link
Thanks again — and to everyone working on their own projects: keep going. It’s worth it.
https://redd.it/1kfnsw3
@r_Unity3D
Hey r/Unity2D!
After months of learning, tweaking, debugging, and way too much coffee... I’m super excited (and a little nervous) to say I just released my very first game on Steam: Crazy Robot Ball! 🎉
It’s built entirely in Unity2D, and it’s been such a wild learning experience — from physics to UI, controller support to Steam integration. The game is a turn-based football game where you control a team of unique robots.
I’m proud of how far I’ve come, and just wanted to say thank you to this community. I’ve learned so much just from browsing posts and reading feedback here. You all rock.
If anyone wants to check it out or has any advice/feedback, I’d love to hear from you!
Here’s the Steam page if you're curious: link
Thanks again — and to everyone working on their own projects: keep going. It’s worth it.
https://redd.it/1kfnsw3
@r_Unity3D
Steampowered
Crazy Robot Ball on Steam
Crazy Robot Ball is a turn-based football game where you control robots with unique attributes like speed and strength. Play across four exciting maps, experiment in Freeplay, or compete in Tournament mode to claim the Golden Trophy. Plan your moves, outwit…
Spear Control Mechanics
Hi. I'm trying to recreate the spear control mechanics for my jousting tournament game. How to make the spear movements smoother so that the weight of the spear is felt when the knight moves?
void RotateLanceFlappy()
{
if (Input.GetKey(KeyCode.Space))
{
float acceleration = spaceButtonImpulse / spearMass;
spearVelocity += acceleration * Time.deltaTime;
}
spearVelocity = Mathf.Lerp(spearVelocity, 0f, spearDrag * Time.deltaTime);
targetAngle += spearVelocity;
targetAngle = Mathf.Clamp(targetAngle, -maxAngle, maxAngle);
float angleDifference = baseAngle - targetAngle;
targetAngle += angleDifference * returnSpeed * Time.deltaTime;
float currentAngle = lance.eulerAngles.z;
float noise = Mathf.PerlinNoise(Time.time * 2f + noiseOffset, 0) * 2 - 1;
float smoothAngle = Mathf.SmoothDampAngle(
currentAngle,
targetAngle + noise * rotationShake,
ref rotationVelocity,
rotationSmoothTime
);
lance.rotation = Quaternion.Euler(0f, 0f, smoothAngle);
}
https://redd.it/1kfm6hs
@r_Unity3D
Hi. I'm trying to recreate the spear control mechanics for my jousting tournament game. How to make the spear movements smoother so that the weight of the spear is felt when the knight moves?
void RotateLanceFlappy()
{
if (Input.GetKey(KeyCode.Space))
{
float acceleration = spaceButtonImpulse / spearMass;
spearVelocity += acceleration * Time.deltaTime;
}
spearVelocity = Mathf.Lerp(spearVelocity, 0f, spearDrag * Time.deltaTime);
targetAngle += spearVelocity;
targetAngle = Mathf.Clamp(targetAngle, -maxAngle, maxAngle);
float angleDifference = baseAngle - targetAngle;
targetAngle += angleDifference * returnSpeed * Time.deltaTime;
float currentAngle = lance.eulerAngles.z;
float noise = Mathf.PerlinNoise(Time.time * 2f + noiseOffset, 0) * 2 - 1;
float smoothAngle = Mathf.SmoothDampAngle(
currentAngle,
targetAngle + noise * rotationShake,
ref rotationVelocity,
rotationSmoothTime
);
lance.rotation = Quaternion.Euler(0f, 0f, smoothAngle);
}
https://redd.it/1kfm6hs
@r_Unity3D
Reddit
From the Unity2D community on Reddit
Explore this post and more from the Unity2D community
Solodev working on its first project. What tips do you have for this screen?
https://preview.redd.it/w4x7c0xiq1ze1.png?width=1440&format=png&auto=webp&s=36c1b484ba0559d55747887108a10c59e7d56430
I've been working solo on this project for a few months now — a gritty, dark fantasy arena roguelike inspired by Dwarf Fortress combat. It is my first project and I still have a lot to learn.
This is the character creation screen: players can choose race, assign stats, select traits and skills, and customize appearance.
There’s still no sound effects and not all UI elements are final, but I’d love to hear your thoughts on the layout, visuals, or anything you think could be improved.
Thanks for checking it out, would love to hear your opinion!
https://redd.it/1kfpz94
@r_Unity3D
https://preview.redd.it/w4x7c0xiq1ze1.png?width=1440&format=png&auto=webp&s=36c1b484ba0559d55747887108a10c59e7d56430
I've been working solo on this project for a few months now — a gritty, dark fantasy arena roguelike inspired by Dwarf Fortress combat. It is my first project and I still have a lot to learn.
This is the character creation screen: players can choose race, assign stats, select traits and skills, and customize appearance.
There’s still no sound effects and not all UI elements are final, but I’d love to hear your thoughts on the layout, visuals, or anything you think could be improved.
Thanks for checking it out, would love to hear your opinion!
https://redd.it/1kfpz94
@r_Unity3D
Sprite showing speakers instead of coin
Hey everyone,
I am working on a game where in coins spawn. Everything was working perfect until I added sound. Now my sprite renderer isn´t showing but instead I see a speaker icon. Anyone know why this happens and how I can fix it? Here is my code:
using UnityEngine;
public class Coin : MonoBehaviour
{
private float fadeDuration = 2f;
private float rotationSpeed = 100f;
private SpriteRenderer spriteRenderer;
private Color startColor;
private float fadeTime = 0f;
[Header("Audio")\]
public AudioClip collectSound;
void Start()
{
spriteRenderer = GetComponent<SpriteRenderer>();
startColor = spriteRenderer.color;
startColor.a = 0f;
spriteRenderer.color = startColor;
fadeTime = 0f;
}
void Update()
{
transform.Rotate(0f, 0f, rotationSpeed * Time.deltaTime);
if (fadeTime < fadeDuration)
{
fadeTime += Time.deltaTime;
float alpha = Mathf.Lerp(0f, 1f, fadeTime / fadeDuration);
startColor.a = alpha;
spriteRenderer.color = startColor;
}
}
void OnTriggerEnter2D(Collider2D other)
{
if (other.CompareTag("Player"))
{
PlayerRole role = other.GetComponent<PlayerRole>();
if (role != null && role.currentRole == PlayerRole.Role.Runner)
{
// ✅ Add score
ScoreManager.Instance.AddScore(other.gameObject, 10);
// ✅ Track coin collection
if (CoinManager.instance != null)
CoinManager.instance.AddCoin(other.gameObject);
// ✅ Play sound and destroy after sound finishes
if (collectSound != null)
{
GameObject soundObject = new GameObject("CoinSound");
AudioSource audioSource = soundObject.AddComponent<AudioSource>();
audioSource.clip = collectSound;
audioSource.Play();
Destroy(soundObject, collectSound.length); // Destroy temp audio object
}
// Disable visuals and collider immediately
spriteRenderer.enabled = false;
GetComponent<Collider2D>().enabled = false;
// Destroy the coin after the sound finishes
Destroy(gameObject, collectSound != null ? collectSound.length : 0f);
}
}
}
}
and here in unity
https://preview.redd.it/kpftuwlas0ze1.png?width=1280&format=png&auto=webp&s=7e78a169c528e73e2c8bbcba22a0cc859b62d2e1
https://preview.redd.it/upjt03lyr0ze1.png?width=1280&format=png&auto=webp&s=16505b8c400b6d845460cb604b7cda055e173918
https://redd.it/1kflfvd
@r_Unity3D
Hey everyone,
I am working on a game where in coins spawn. Everything was working perfect until I added sound. Now my sprite renderer isn´t showing but instead I see a speaker icon. Anyone know why this happens and how I can fix it? Here is my code:
using UnityEngine;
public class Coin : MonoBehaviour
{
private float fadeDuration = 2f;
private float rotationSpeed = 100f;
private SpriteRenderer spriteRenderer;
private Color startColor;
private float fadeTime = 0f;
[Header("Audio")\]
public AudioClip collectSound;
void Start()
{
spriteRenderer = GetComponent<SpriteRenderer>();
startColor = spriteRenderer.color;
startColor.a = 0f;
spriteRenderer.color = startColor;
fadeTime = 0f;
}
void Update()
{
transform.Rotate(0f, 0f, rotationSpeed * Time.deltaTime);
if (fadeTime < fadeDuration)
{
fadeTime += Time.deltaTime;
float alpha = Mathf.Lerp(0f, 1f, fadeTime / fadeDuration);
startColor.a = alpha;
spriteRenderer.color = startColor;
}
}
void OnTriggerEnter2D(Collider2D other)
{
if (other.CompareTag("Player"))
{
PlayerRole role = other.GetComponent<PlayerRole>();
if (role != null && role.currentRole == PlayerRole.Role.Runner)
{
// ✅ Add score
ScoreManager.Instance.AddScore(other.gameObject, 10);
// ✅ Track coin collection
if (CoinManager.instance != null)
CoinManager.instance.AddCoin(other.gameObject);
// ✅ Play sound and destroy after sound finishes
if (collectSound != null)
{
GameObject soundObject = new GameObject("CoinSound");
AudioSource audioSource = soundObject.AddComponent<AudioSource>();
audioSource.clip = collectSound;
audioSource.Play();
Destroy(soundObject, collectSound.length); // Destroy temp audio object
}
// Disable visuals and collider immediately
spriteRenderer.enabled = false;
GetComponent<Collider2D>().enabled = false;
// Destroy the coin after the sound finishes
Destroy(gameObject, collectSound != null ? collectSound.length : 0f);
}
}
}
}
and here in unity
https://preview.redd.it/kpftuwlas0ze1.png?width=1280&format=png&auto=webp&s=7e78a169c528e73e2c8bbcba22a0cc859b62d2e1
https://preview.redd.it/upjt03lyr0ze1.png?width=1280&format=png&auto=webp&s=16505b8c400b6d845460cb604b7cda055e173918
https://redd.it/1kflfvd
@r_Unity3D
I switched from Unreal to Unity and for the first time in years, I’m having fun making games again!
https://redd.it/1kfk2gl
@r_Unity3D
https://redd.it/1kfk2gl
@r_Unity3D
Reddit
From the Unity3D community on Reddit: I switched from Unreal to Unity and for the first time in years, I’m having fun making games…
Explore this post and more from the Unity3D community
Wall Jumping - Climbing up wall
Hi! I was looking into how to implement wall jumping into my game, and after looking through a couple of videos, I noticed most people use this noscript:
https://gist.github.com/bendux/b6d7745ad66b3d48ef197a9d261dc8f6
However, after implementing it, the player can just climb up the wall if they spam the space bar. I didn't want that because it would kind of go against why I'm implementing wall jumping, and I've tried modifying the code, but nothing seems to change it, and when it does change, it messes up the jumping mechanic.
If someone could guide me through how to prevent players from simply climbing up the wall instead of jumping between walls, I'd appreciate that!
https://redd.it/1kfwwpf
@r_Unity3D
Hi! I was looking into how to implement wall jumping into my game, and after looking through a couple of videos, I noticed most people use this noscript:
https://gist.github.com/bendux/b6d7745ad66b3d48ef197a9d261dc8f6
However, after implementing it, the player can just climb up the wall if they spam the space bar. I didn't want that because it would kind of go against why I'm implementing wall jumping, and I've tried modifying the code, but nothing seems to change it, and when it does change, it messes up the jumping mechanic.
If someone could guide me through how to prevent players from simply climbing up the wall instead of jumping between walls, I'd appreciate that!
https://redd.it/1kfwwpf
@r_Unity3D
Gist
PlayerMovement.cs
GitHub Gist: instantly share code, notes, and snippets.