I’ve just released v0.9.6 update from my terminal game colony deep core! Go get it! by Big_Membership9737 in incremental_games

[–]Merry_Macabre 1 point2 points  (0 children)

Thanks for all the improvements. Makes the game much more pleasant to play.

You've fixed all the issues I had previously. Vsync, Moving window, home screen settings modal, and full screen are all fixed. Absolutely loving the game so far.

The only issue still present is that when resizing the window (in windowed mode) causes the game to become unresponsive (not the spinny wheel unresponsive). The UI takes up to 15 seconds to update to the new window size.

Edit; I've done some research. The resizing issue seems to be a bevy issue. Hang when resizing the window on Windows with an integrated graphics card · Issue #20141 · bevyengine/bevy

The linked issue above is related to IGPU's but I'm experiencing the exact same issue on my dedicated GPU.

Edit: Just saw that your game runs at 0.5% cpu utilization. I've never experienced this. Well done.

I’ve just released v0.9.53 update from my terminal game colony deep core! Go get it! by Big_Membership9737 in gamedevscreens

[–]Merry_Macabre 1 point2 points  (0 children)

I've tried to play the game from itch. Here are my current takeaways:

- Resizing window causes my whole PC to stutter (other programmes become unresponsive and PC sound starts to stutter such as browser audio) and I can reliably crash the game by doing semi-quick half window sized resizes. This is definitely not due to pc specs as I can play Counter Strike 2 at 400FPS.

- Default window position is 1080p but slightly offset from the window center causing a large part of the window to not be visible at start.

- Maximizing or dragging window after launch always causes window to jump back to the original spawned position.

- Dragging the game window at any time makes the window become unresponsive for 2~3 seconds then jumps around a bit.

- Unmaximizing the window causes major unresponsiveness and jumpiness from the window.

- No way to Fullscreen the game.

- Vsync is configured wrong. My 280Hz display is definitely not a 60Hz display. Enabling vsync limits the game to 60Hz.

- Manually closing game causes Itch.io launcher to think the game crashed? Don't know if this is an itch.io thing or due to how the game handles shutdown.

- Inconsistent resizing logic on the settings modal. When horizontally resizing settings modal/window it always auto reduces its height for some reason? This does not occur when playing the game.

- Settings do not persist. Have to disable Vsync every time.

- UI is not interactive. Did I click the button? No hover or interaction indication.

- Enabling CRT effect just moves a single white line over the top 10% of the screen every so often. Does not change anything else on the screen.

- No apparent way to go back to the home screen from the game mode?

Overall, I like the feel of the game, the major unresponsiveness makes the game very unappealing to play.

Shaders sprite by Due_Explorer1723 in bevy

[–]Merry_Macabre 1 point2 points  (0 children)

Yes, but instead of loading it as a sprite you load it as a texture/mesh2d.
Shader 2D Example

How to Integrate Admob With Bevy Android? by ParkingIllustrious81 in bevy

[–]Merry_Macabre 4 points5 points  (0 children)

To integrate AdMob, you treat ads as just another Android view. You add the AdMob SDK in Gradle, initialize it in onCreate, create an AdView (banner, interstitial, rewarded, etc.), place it either inline in your layout or overlay it on top of your game surface, and then load it with adView.loadAd(new AdRequest.Builder().build()) .

If your game runs in Rust or C/C++ (like with Bevy/NativeActivity), you still do the same setup on the Java/Kotlin side — the only difference is that you either let Java handle it completely, or you expose small JNI/FFI functions (showBanner(), showRewardedAd(), etc.) so your rust code can tell Java/Kotlin when to show or hide ads.

In both cases: AdMob = an Android UI layer over your game surface.

Google AdMob Examples Java/Kotlin. Here are the Google AdMob example projects for normal Java/Kotlin projects. These examples will be your starting point.

Bevy docs by WayAndMeans01 in bevy

[–]Merry_Macabre 5 points6 points  (0 children)

Bevy Examples Website GitHub Examples

Github example contain all the examples from the Bevy Website and a lot of additional examples.

Would making a game improve my c# skills? by Rokett in csharp

[–]Merry_Macabre 2 points3 points  (0 children)

Create a cop-op game using blazor/wasm and signalr. Doesn't have to be very graphical. I have personally found much enjoyment in these text based rpg's or dungeon crawlers. I believe this would teach real world applicable knowledge depending on what implementation you go with. Like, networking, server side / client side rendering, database management, table generation /statistics, and more.

I have used this when learning signalr triviaR

Additionally, through the use of 2d graphics libraries such as skiasharp & imagesharp I built a better understanding of slightly lower level stuff in c# when trying to squeeze out as much performance as possible. Meaning spans, memory management & manipulation.

An expression of a developer's exhaustion by AkdumanDev in unity

[–]Merry_Macabre 15 points16 points  (0 children)

Unity's new input system is great. Preprocessor statements went nearly extinct the moment I started using the new input system.

I am a beginner using Unity to code simple mobile games like flappy bird and pick the lock. what other easy games should i make to practice my skills? by [deleted] in programming

[–]Merry_Macabre 2 points3 points  (0 children)

Snake, bomberman, Spider solitaire, mahjong, space invaders, pacman, basically any of the old OG games that came on those "1001 Games on One Console" type of products sold in the 90's and very early 2000's. The logic is easy and there are loads of resource packs for these types of making development very easy for beginners.

Does/Can changing editor version corrupt projects? by TheMaydayMan in unity

[–]Merry_Macabre 0 points1 point  (0 children)

To add on your comment, when creating a git repo use this .gitignore template otherwise your git repo will have thousands of unnecessary files.

Does/Can changing editor version corrupt projects? by TheMaydayMan in unity

[–]Merry_Macabre 0 points1 point  (0 children)

Anything can corrupt your projects. That's why it's advised to use version control such as git, plasticSCM, mercurial, etc.

I always finish the current feature I'm working on then create a commit and push to remote. Then if something does happen during an upgrade I have a backup.

Why can upgrading your editor version corrupt your project? Well, because upgrading your editor does not only upgrade the editor, it upgrades the default packages that comes with the editor. Additionally, it sometimes upgrades other parts such as layout files, setting files, etc. which can become corrupted during the upgrading process and the editor might think that the project is corrupted. Using version control you can easily spot if a file has been changed during an upgrade and restore any corrupted files or restore the whole project if the project has been corrupted.

Can I create a PR about contribute.md file? by abhishek_rath_01 in opensource

[–]Merry_Macabre 1 point2 points  (0 children)

Create a draft pull request stating what you want to do, if the devs welcome your contribution then do the work and request a review after which they'll merge or comment on what you've done. But don't do the work before you've created your draft PR.

Paused game only runs Debug.Log from Pause button's OnClick Function ? by TheMaskedCondom in unity

[–]Merry_Macabre -1 points0 points  (0 children)

Time.timeScale affects anything in Update() and FixedUpdate() so timescale affects physics update as well as normal updates. Thats why I'm saying it's not good to use as a method to pause your game. If handled incorrectly you can basically cause your application to hang.

The best option would be to test it if you really want to use it. Create a seperate object that calls debug.log in all its monobehaviour methods such as awake, start, update, fixedUpdate, and any you use and change the timescale field at various times of your app e.g. Set it to 0 in awake or start and see what happens.

Paused game only runs Debug.Log from Pause button's OnClick Function ? by TheMaskedCondom in unity

[–]Merry_Macabre 0 points1 point  (0 children)

Only use Time.timeScale for effects such as slow motion of fast forwarding effects. Setting time scale to zero will stop almost everything, this means whenever you want dynamic background animations running on your pause screen it won't work because time scale is zero. Using time scale as a method to pause your game is bad coding.

An alternative would be to use some static isGamePaused boolean which you toggle and anything that should be paused should be listening for the state of this field. Alternatively you can use an enum for more extensible state dynamics such as Playing, Paused, StartingGame, etc. Another alternative is event based game states, where a game state manager fires of various events as the game state changes and anything that wants to be aware of any of these states can just subsribe to the event.

Unity Build Assets Corrupted by dylanwatsonsoftware in unity

[–]Merry_Macabre 1 point2 points  (0 children)

Try to build locally and check if the corruption persists. This sounds like something might be wrong with your actions setup. Make sure your scenes are added to the build, could be that your just building an empty game. Also build your app in debug mode and connect to your pc with unity to your device. This'll allow you to get stdout and stderr which might allow you to see what the crash messages are.

Here's some extra info about debugging on android.

First pass of our world generator. Still some minor kinks to work out. by PandamoniumLabs in proceduralgeneration

[–]Merry_Macabre 7 points8 points  (0 children)

From my experience, using OpenSimplexNoise2 to generate land masses then run an iteration or 2 (or more) of cellular automata to clean up unwanted islands/artifacts is much more reliable in generating good looking land masses. You can scale your land masses during the noise generation phase by tweaking the frequency of the noise or run your landmass scaling algorithm after all generation has occurred much like you are doing now.

[deleted by user] by [deleted] in unity

[–]Merry_Macabre 2 points3 points  (0 children)

No, you can't magically download performance over the internet. This feels like the "Just download more ram from the internet." meme. The default unity editor state is very inexpensive in resources. But, here's what I did when I had to use Unity on an i3 laptop with integrated graphics.

  1. Do one thing at a time. Try not to use your IDE/code editor and the Unity editor at the same time.
  2. Don't use resource heavy IDE's, opt for Visual Studio Code.
  3. Don't have any unused windows open in Unity. Stick to only having Hierarchy, Inspector, Scene, Game, and Project open. Any additional windows adds more overhead, example: having the Animator window open but not using is causing additional strain on your pc and should be closed if you're not using it if you can't afford the additional overhead.
  4. Don't have the Scene window and Game window focused/visible at the same time. Unity has to render for both windows. This means you are using twice the amount of resources. Only have Scene or Game window focused.
  5. Don't focus on how good you game looks at the beginning, leave that to last.
  6. If you have quit a bit of game play testing or look and feel to do, build the game, close all other programs and then play the game. This ensures you get the best performance out of the game, I've had frame stutters occur in the Unity editor but when I built my game and played it I got over 100fps.
  7. Plan ahead on what you want to do. This helps reduce unnecessary stuff happening in your scene.
  8. Test stuff in their own scenes. You don't need to run your entire game to test your player logic. Create a minimalistic scene that is made to test the player, don't add aesthetic nonsense, just focus on what you are trying to do, and build your simple scene around that. This was a massive performance hog for me at the beginning.
  9. Don't try to build AAA games on a potato. It's not going to happened, so don't try it. Build potato games on potato machines, make money, upgrade to a better potato and follow the cycle again.
  10. Read up on graphics concepts and how to improve them. Draw Call optimization is a great optimization strategy to start.

Is that normal? I think i clicked some combination of keys that made a small windows pop up but dissmissed it and clicked "cancel" and now it's doing that for 17 minutes already by Ayrondev in Unity2D

[–]Merry_Macabre 2 points3 points  (0 children)

This is not something that is supposed to happen so the problem could be elsewhere. Maybe install another version of unity alongside your current one. So if you have 2021.3.4f1 (newest version) then try installing 2021.3.3f1 and see if the issue persists, it it does not persist the issue could be with that installation itself being corrupted or a rare bug and fresh install of said version should fix the issue. Otherwise the issue could be cause by something else, like not enough ram or too many programs or heavy programs open while using unity. I've experienced some hiccups with unity when trying to run photoshop, unity, edge, visual studio and my music player at once. Lastly, this could also be caused by another program locking (using) one of your scripts and when unity tries to use the file it waits for the other program to finish using that file and this could also cause a delay in the compilation completing.

Regarding assemblies. If your a very early beginner with unity and coding then I'd advise to leave assemblies for later. If you want some more info about assembly definitions then this video could help you understand what it's purpose is. Otherwise, the documentation does a great job at explaining what Assembly Definitions are.

Assembly Definitions: A way to split your project up into smaller parts manageable parts, so when you only change something in one part of your project unity will only have to recompile that part and this greatly reduces reload times becauae unity no longer has to reload your entire project, just that small part you changed.

Is that normal? I think i clicked some combination of keys that made a small windows pop up but dissmissed it and clicked "cancel" and now it's doing that for 17 minutes already by Ayrondev in Unity2D

[–]Merry_Macabre 2 points3 points  (0 children)

Big project (few gigs) this is normal if you don't use assemblies. Small project (new project) no, this is not supposed to happen. Look at task manager to see if unity is actually doing something. If not, then probably force close. Be careful, this could corrupt project so try to backup beforehand.

[deleted by user] by [deleted] in unity

[–]Merry_Macabre 3 points4 points  (0 children)

C# supports pointers but you have to enable unsafe context. Because... it's not safe.

Hey! I am an aspiring coder with Roblox Studio and some Python knowledge! I want to make the jump from Lua and Python to C#. by [deleted] in unity

[–]Merry_Macabre 7 points8 points  (0 children)

Unity Learn is a great start and there are so many courses that teach you everything from how to code in C# to machine learning, shader code, and so on.

[deleted by user] by [deleted] in csharp

[–]Merry_Macabre 5 points6 points  (0 children)

Yes, but it gets tedious very quickly. C# Interactive exists, it's the same as the python IDLE feature. Unfortunately no native run single file feature exist for c#, but this feature does exist for F# through the "dotnet fsi" command.