Just released my second game, Wizard Blaster.
https://store.steampowered.com/app/3031100/Wizard_Blaster/
https://redd.it/1fblnst
@r_Unity3D
Just finished a system to place buildings in my game
What you guys think? Looks good? It has snap and if the building (in this case the soil field) doesn't fit it doesn't snap to the grid.
https://i.redd.it/fhf9awq1lfnd1.gif
https://redd.it/1fbdtf0
@r_Unity3D
My sailing game so far, happy to have managed custom IK.
https://redd.it/1fbd1h4
@r_Unity3D
I'm trying to make it so the player has different animations depending on if he has acquired the sword or not, I copied the same conditions for the transitions except i put a bool hasSword and made it so all the sword animations could only be played if it's true. It's not working.
https://redd.it/1fbcvd3
@r_Unity3D
Need guidance on a resource management game.
I am creating a resource management game and I would like some guidance in how to approach data storage. In the game, the player will be able to form Teams with different characters. My idea is to make each team a generic game object, and each character as child generic game objects under the Team. It seams to be the "cleanest" way to do it (at least with my limited knowledge of Unity), especially with random generated characters as prefabs. But at the same time, those objects (initially) won't be used for anything but else but store data, and it feels like all of that data could be included in a single game object with a generic script.
I guess my doubt is if the multiple objects way of planning will be a pain in the ass on the long run, when hundreds of characters (and game objects) could be available.
https://redd.it/1fb9jhs
@r_Unity3D
which was fully immediate, however it can be easily modified at runtime and is declared using C++ macros.
13. Speaking of C++, You need to buy either Visual Assist which I use or Rider/Resharper if you want to have a decent intellisense experience. I don’t care about most other features which resharper provides and in fact actively dislike them but it offers some things which you might want/need.
14. The animation system has much more features than unity’s and is much bigger but the initial experience is not too different from unity’s animators and their blend trees and state machines. Since I generally don’t do much in these areas, I will not talk much about it.
15. The networking features are built-in to the engine like all games are by default networked in the sense that SpawnActor automatically spawns an actor spawned on the server in all clients too. The only thing you need to do is to check the replicated box of the actor/set it to true in the constructor. You can easily add synced/replicated variables and RPCs and the default character is already networked.
16. There is a replication graph system which helps you manage lots of objects without using too much CPU for interest management and it is good. Good enough that it is used in FN.
17. Networking will automatically give you replay as well which is a feature of the well integrated serialization, networking and replay systems.
18. Many things which you had to code manually in unity are automatic here. Do you want to use different texture sizes for different platforms/device characteristics? just adjust the settings and boom it is done. Levels are automatically saved in a way that assets will be loaded the fastest for the usual path of players.
19. Lots of great middleware from RAD game tools are integrated which help with network compression and video and other things.
20. The source code is available and you have to consult it to learn how some things work and you can modify it, profile it and when crashed, analyze it to see what is going on which is a huge win even if it feels scary at first for some.
21. Blueprints are not mandatory but are really the best visual scripting system I’ve seen because they allow you to use the same API as C++ classes and they allow non-programmers to modify the game logic in places they need to. When coding UI behaviors and animations, you have to use them a bit but not much but they are not that bad really.
22. There are two types of blueprints, one which is data only and is like prefabs in unity. They are derived from an actor class or a child of Actor and just change the values for variables and don’t contain any additional logic. The other type contains logic on top of what C++ provides in the parent class. You should use the data only ones in place of prefabs.
23. The UMG ui system is more like unity UI which is based on gameobjects and it uses a special designer window and blueprint logic. It has many features like localization and MVVM built-in.
24. The material system is more advanced and all materials are a node graph and you don’t start with an already made shader to change values like unity’s materials. It is like using the shader graph for all materials all the time.
25. Learn the gameplay framework and try to use it. Btw you don’t need to learn all C++ features to start using UE but the more you know the better.
26. Delegates have many types and are a bit harder than unity’s to understand at first but you don’t need them day 1. You need to define the delegate type using a macro usually outside a class definition and all delegates are not compatible with all situations. Some work with the editor scripts and some need UObjects.
27. Speaking of UObjects: classes deriving from UObject are serializable, sendable over the network and are subject to garbage collection. The garbage collection happens once each 30 or 60 seconds and scans the graph of objects for objects with no references. References to deleted actors are automatically set to nullptr but it doesn’t happen for all other objects. Unreal’s docs on
Added the Bear shapeshift form as a power-up to my transform endless runner!
https://redd.it/1fb5ts6
@r_Unity3D
What do you think of the level of detail of the map?
https://redd.it/1fb3ia8
@r_Unity3D
Grapple Attack
im making a 2d platformer style game and i just made a ability to grapple onto enemys by left clicking them, you instantly get to them, but now im stuck because i want to make it so if i grapple into them they die and knock you a bit away(for momentum), does anyone know a tutorial or some kind of code i could use for this? im on unity 6 preview if that info is needed
https://redd.it/1fb3w67
@r_Unity3D
I'm making a super-fast paced orbital shooter in the vein of Super Stardust HD
https://redd.it/1fazzxe
@r_Unity3D
Would you and your friends sit at this table for lunch?
https://redd.it/1faj4gs
@r_Unity3D
Guidance - Send me a light pls
Hi guys
I've come here for a bit (or lots) of guidance regarding as to how to materialise an idea.
The other I wanted to play a certain type of game, and after a long search I found out it doesn't exists yet, so I said F it I'll make one for me and if it turns out acceptable I'll commercialise it.
My main issue is that, my idea requires hundreds of characters and therefore assets. And I don't have the capital to invest thousands in art atm...
So I've been relaying on rpg maker character creator which allows an acceptable degree of customisation and produces animation sprite sheets which is great... however I hate the style, and I believe rpgmaker will not allow me to implement the features that I want for my game.
So I research on other engines such as godot, unreal and cocos. Which are great for 2d rpg however I don't know how to deal with making assets for hundreds of characters with those engines. I tried making character sheet with stable diffusion but sadly AI is not there yet...
Just to be clear I don't want to relay on ai art, my long term goal.would be to, if things go well, release a cheap version of the game and with whatever I make with that, make 2.0 v let's call it and hire a couple of friends for the assets. It's just that I don't have 10k right now to invest in something that at the moment isn't a business
Any guidance or help would be greatly appreciated guys!
https://redd.it/1favm01
@r_Unity3D
Next step in personal project?
I just learned how to make scriptable objects, now I want enemies to be able to have different types of attacks and be in different states based on distance. I’m confused because there’s a lot of different ways people do it. Should I learn events, coroutines/ienumerators, or states to best do this? (Assuming I only have time to learn one) thanks
https://redd.it/1faopw7
@r_Unity3D
Aiming animation to shoot a projectile up and down in a side scroller while using sprite sheets.
Hello all. I’m in the middle of prototyping a metroidvania style game with the animation “hand drawn” in a way similar to something like Gris or Hollow Knight with traditional animation sprite sheets. I know most games in this style tend to move the character itself around the y axis, ie Mario jumping or Cuphead, but I was wondering if it were possible to marry this traditional animation with an aiming state that can make a character aim up or down using y-axis inputs from a stand still. I would prefer not to switch the animation style to something like Spine and using cut-outs because I think it looks too puppety. However, if there is a way to animate it this way while still looking smooth I’m all ears. In the trailer for Blade Chimera there is what looks like an aiming mechanic with sprite sheet animations, so maybe it is possible? Any and all ideas welcome. Thanks in advance!
https://youtu.be/BOOx2yyD3Ik?si=fnCvDJsZ9c1rCVkm
https://redd.it/1faqarf
@r_Unity3D
Our real-time collaboration tool for Unity, called Scene Fusion 2
https://redd.it/1fb761k
@r_Unity3D
Our new environment is a dark prison where villains torture the innocents. Please let us know what you think!
https://redd.it/1fbehf6
@r_Unity3D
Added occlusion culling to my grass renderer (Github source)
https://redd.it/1fb7476
@r_Unity3D
reflection, garbage collection and serialization are sparse so if you don’t know what these things are, you might want to read up on them elsewhere but you don’t have to do so.
28. The build system is more involved and already contains a good automation tool called UAT. Building is called packaging in Unreal and it happens in the background. UE cooks (converts the assets to the native format of the target platform) the content and compiles the code and creates the level files and puts them in a directory for you to run.
29. You can use all industry standard profilers and the built-in one doesn’t give you the lowest level C++ profiling but reports how much time sub-systems use. You can use it by adding some macros to your code as well.
30. There are multiple tools which help you in debugging: Gameplay debugger helps you see what is going on with an actor at runtime and Visual Logger capture the state of all supported actors and components and saves them and you can open it and check everything frame by frame. This is separate from your standard C++ debuggers which are always available.
31. Profilers like VTune fully work and anything which works with native code works with your code in Unreal as well. Get used to it and enjoy it.
32. You don't have burst but can write intrisics based SIMD code or use intel's ISPC compiler which is not being developed much. Also you can use SIMD wrapper libraries.
33. Unreal's camera does not have the feature which Unity had to render some layers and not render others but there is a component called SceneCapture2dComponent which can be used to render on a texture and can get a list of actors to render/not render. I'm not saying this is the same thing but might answer your needs in some cases.
34. Unreal's renderer is PBR and specially with lumen, works much more like the HDRP renderer of Unity where you have to play with color correction, exposure and other post processes to get the colors you want. Not my area of expertise so will not say more. You can replace the engine's default shader to make any looks you want though (not easy for a non-graphics programmer).
35. Unreal has lots of things integrated from a physically accurate sky to water and from fluid sims to multiple AI systems including: smart objects, preception, behavior trees, a more flexible path finding system and a lot more. You don't need to get things from the marketplace as much as you needed to do so on unity.
36. The debugger is fast and fully works and is not cluncky at all.
37. There are no coroutines so timers and code which checks things every frame are your friend for use-cases of coroutines.
38. Unreal has a Task System which can be used like unity's job system and has a very useful pipelines concept for dealing with resource sharing.
39. There is a mass entities framework similar to Unity's ECS if you are into that sort of thing and can benefit from it for lots of objects.
I hope the list and my experience is helpful.
Related links
Task System
Mass Entity
My website for contract work and more blogs
https://redd.it/1fb6v99
@r_Unity3D
Learning Unreal Engine as a Unity Developer
I've used Unity since 2009 and about 2 years ago started to learn Unreal Engine for real. These are the notes I compiled and posted on substack before. I removed the parts which are not needed and added a few more notes at the end. I learned enough that I worked on a game and multiple client projects and made these plugins.
There is a documentation page which is helpful. Other than the things stated there, you need to know that:
1. Actors are the only classes that you can put in a scene/level in Unreal and they do not have a parent/child relationship to each other. Some components like the UStaticMesh component can have other actors as their children and you can move actors with each other in code but in general the level is a flat set of actors. You also have functions to attach actors to other actors. In Unity you simply dragged GameObjects under each other and the list was a graph.
2. The references to other actors that you can set in the details panel (inspector) are always to actors and not to specific components they have. In unity you sometimes declare a public rigidbody and then drag a GameObject to it which has a rigidbody but in UE you need to declare the reference as an Actor* pointer and then use FindComponent to find the component.
3. Speaking of Rigidbody, UE doesn’t have such a component and the colliders have a Simulate boolean which you can check if you want physics simulation to control them.
4. UE doesn’t have a FixedUpdate like callback but ticks can happen in different groups and physics simulation is one of them.
5. You create prefab like objects in UE by deriving a blueprint from an Actor or Actor derived class. Then you can add components to it in the blueprint and set values of public variables which you declared to be visible and editable in the details panel.
6. In C++ you create the components of a class in the constructor and like unity deserialization happens after the constructor is called and the field/variable values are set after that so you should write your game logic in BeginPlay and not the constructor.
7. There is a concept which is a bit confusing at first called CDO (class default object). These are the first/main instance created from your C++ class which then unreal uses to create copies of your class in a level. Yes unreal allows you to drag a C++ class to the level if it is derived from Actor. The way it works is that the constructor runs for a CDO and a variable which I think was called IsTemplate is set to true for it. Then the created copy of the object is serialized with the UObject system of UE and can be copied to levels or be used for knowing the initial values of the class when you derive a blueprint from it. If you change the values in the constructor, the CDO and all other objects which did not change their values for those variables, will use the new value. Come back to this later if you don’t understand it now.
8. The physics engine is no longer physX and is a one Epic themselves wrote called Chaos.
9. Raycasts are called traces and raycast is called LineTrace and the ones for sphre/box/other shapes are called Sweep. There are no layers and you can trace by object type or channel. You can assign channels and object types to objects and can make new ones.
10. The input system is more like the new input system package but much better. Specially the enhanced input system one is very nice and allows you to simplify your input code a lot.
11. Editor scripting is documented even worse than the already not good documentation but this video is helpful.
12. Slate is the editor UI framework and it is something between declarative and immediate GUIs. It is declarative but it uses events so it is not like OnGUI
play multiple animations simultaneously
Hey guys,
I have assets which have animation sprites for melee attacks and the effects for the animations seperated. What I want is to play the animations together.
The way I handled it now is, that the gameobject has a sprite renderer and an animation controller which plays the animation for attacking, walking and so on. That gameobject has a child which also holds a sprite renderer and an animation controller which plays the special effects animations.
There are a few problems with this solution:
1. I have to handle to handle two different animator in my code which I did not find ideal
2. I have a trigger for the special effects animations so that the animation goes back to a default empty animation. This leads to the problem, that when the attack animation is canceled because the player is running away from the enemy, the special effects animation is played until the end. This I can maybe solve to go back to a bool as a trigger.
3. I have to tune both animations so that they are synchronised when played which I find tedious to do.
I also had a look at at animation layer, but because i only have one sprite renderer, I did not get it to work and most of the tutorials for animation layer I found was for 3D games.
Is there a more elegant or better way in unity to handle multiple animations which should be played?
https://redd.it/1fb7h2r
@r_Unity3D
TextMeshPro Dropdown scrolls down when using mouse but not keyboard or controller.
How do you make it so that it scrolls using keyboard and controller? I'm using the new Unity input system that supports controller and keyboard at once.
https://redd.it/1fb555h
@r_Unity3D
Interfaces vs Component Pattern
Recently, I finally embraced components. In my latest project, I'm using this pattern heavily, constantly adding new components to my behaviours, and new behaviours to game objects. Works like charms, the game is modular, extendable, and I even expect to finish it this time.
But everything works so great that I decided to learn something new this time, and improve architecture with interfaces. I've found a few beautiful explanations (e.g. this), but somehow I could achieve virtually the same using just components. They provide even greater flexibility and, I believe, classes are much smaller, improving overall readability.
So, following the example from the comment I provided, when you suggest using IGreetable, and when GreetComponent?
https://redd.it/1fb0pxp
@r_Unity3D
Unity Infinite Background - help needed please!
for a game I am making I need an infinite background. the issue is that It wont work in my case for me to just use the offset of the material.
what I am trying to do is create a 3x3 chunks system that wraps around wherever the player is going. I have been working on this for a while now and I almost have it working on just the y axis, however there is still issues with the chunks messing up when the game starts and also I will need it to work horizontally and diagonally aswell. I will include the code I have done so far, however if anyone has a compleetly better way I am more than happy to scrap my own code.
here is the pastebin link to my script. https://pastebin.com/drFM7ACF
https://redd.it/1fayfki
@r_Unity3D
my friends are actually digging my game!
been working on a memory matching game called memory melon for a while now. published on ios and android and sent to some of my friends. got a good chuckle from their conversation. feels great to have people playing and sharing their scores!
if you're interested in playing and sharing feedback, the links are below.
App Store
Google Play
https://preview.redd.it/xel8qe1geand1.png?width=2014&format=png&auto=webp&s=45455c102c7711be1deaacc94c1496a085b87647
https://redd.it/1fav78e
@r_Unity3D
issue with enemy following player
So this issue has just occured after transferring my game to a new latop- extremely random issue - i have a drone buddy that follows the player (the same code for following the player also applies to enemies) - the speed of the drone or enemy following the player is EXTREMELY slow regardless of what i set the speed variable to. Just to confirm that this was all working fine before and just changed after trasnferring to a new (higher spec) laptop - all files were transferred btw
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class roverscript : MonoBehaviour
{
[HideInInspector] public playerStatesList pState;
private Rigidbody2D rb;
private SpriteRenderer sr;
private Animator anim;
private AudioSource audioSource;
private float xAxis, yAxis;
[SerializeField] private float followDistance;
[SerializeField] private float speed;
float timer;
void FlipRover()
{
sr.flipX = PlayerController.Instance.transform.position.x > transform.position.x;
anim.SetBool("moving", false);
}
void Followplayer()
{
float dist = Vector2.Distance(transform.position, PlayerController.Instance.roverPoint.transform.position);
if(dist < followDistance)
{
rb.MovePosition(Vector2.MoveTowards(transform.position, PlayerController.Instance.roverPoint.transform.position, Time.deltaTime * speed));
FlipRover();
}
else
{
transform.position = PlayerController.Instance.roverPoint.transform.position;
}
if(dist >= 2)
{
anim.SetBool("moving", true);
}
else
{
anim.SetBool("moving", false);
}
}
// Start is called before the first frame update
void Start()
{
pState = GetComponent<playerStatesList>();
rb = GetComponent<Rigidbody2D>();
anim = GetComponent<Animator>();
sr = GetComponent<SpriteRenderer>();
audioSource = GetComponent<AudioSource>();
}
// Update is called once per frame
void Update()
{
FlipRover();
Followplayer();
}
}
https://redd.it/1faopbe
@r_Unity3D
image morphing
hello i am trying to morph a defult knob sprite into a different image is it possible to do this if it is can someone point me in the possible direction please
regeards
rooster
https://redd.it/1farcgm
@r_Unity3D
I think Unity is going on the right path again
Recently, they have done some stuff that makes me interested in this engine again. They are returning the old version naming that has been abandoned since 2015, they are adding the Multiplayer Testing which is super helpful for some of my projects and the overall new features. I honestly think these are enough to bring me back into Unity development.
https://redd.it/1fanirn
@r_Unity3D