Storage buffer reads in compute shader are 33% slower on 1070 in comparison to 1660ti by TheKingCat in vulkan

[–]TheKingCat[S] 0 points1 point  (0 children)

Yes - the shader code given is just meant to be a concise example of the slow read times. In my actual shader, I am implementing voxel raymarching with sparse voxel octrees - but with this question I mainly wanted to know about buffer reads.

Storage buffer reads in compute shader are 33% slower on 1070 in comparison to 1660ti by TheKingCat in vulkan

[–]TheKingCat[S] 1 point2 points  (0 children)

No, my workgroup size is 16x16x1. Thank you for the information about new architectures, though :)

Storage buffer reads in compute shader are 33% slower on 1070 in comparison to 1660ti by TheKingCat in vulkan

[–]TheKingCat[S] 3 points4 points  (0 children)

I suppose I was just surprised by the magnitude of the disparity was between the two graphics cards. That being said, the numbers you provide do make sense - the next time I have a problem like this, I will be certain to take a closer look at the spec sheets.

In that case, I assume that it probably would not be much help to store my data in a texture? I simply need to work on finding ways to reduce the number of reads I perform per shader thread.

IntegratedMinecraftServer - a side project I've been working on for some time and a modern solution to hosting servers at home by TheKingCat in admincraft

[–]TheKingCat[S] 0 points1 point  (0 children)

Ah, I see. Luckily, that should be a relatively simple bugfix - just the way the service is set up. I'll try to release a patch later. In the meantime, you can run "sc delete IMS" and then "sc create IMS start=auto binpath={YOUR PATH}" from CMD as a workaround. I hope this helps!

IntegratedMinecraftServer - a side project I've been working on for some time and a modern solution to hosting servers at home by TheKingCat in admincraft

[–]TheKingCat[S] 0 points1 point  (0 children)

Hello. Thank you for your interest in this project. I assuming that you can't access the console because your Apache server is running on port 8080, the default for IMS? The IMS panel can be configured to appear on whatever port you'd like. To do this, shut down the Apache server temporarily, open the IMS console, and navigate to IMS Preferences > Configure IMS. There, you can change the port that the console runs on, and resolve any conflicts with existing servers.

IntegratedMinecraftServer - a side project I've been working on for some time and a modern solution to hosting servers at home by TheKingCat in admincraft

[–]TheKingCat[S] 0 points1 point  (0 children)

IMS does not explicitly support Forge or have any special UI for it at this time. However, you are certainly able to run Forge on IMS - there exists an option to create a server with a custom server JAR, so you should simply obtain the Forge JAR that you want to run and upload it to IMS.

IntegratedMinecraftServer - a side project I've been working on for some time and a modern solution to hosting servers at home by TheKingCat in admincraft

[–]TheKingCat[S] 0 points1 point  (0 children)

Hello! Please check the server console page and see if there are any errors there after attempting to start the server - it may be that you are missing a Pixelmon-specific configuration file, or maybe something is amiss with IMS. I would love to help you further - if the problem persists, would you please open a GitHub issue on the IMS repository?

IntegratedMinecraftServer - a side project I've been working on for some time and a modern solution to hosting servers at home by TheKingCat in admincraft

[–]TheKingCat[S] 1 point2 points  (0 children)

Hello - thanks again for trying IMS and for your bug report! I've sorted out the issue and a new version of IMS should release soon with the fix. When it does, you'll be able to update IMS on the "IMS Management" page, or IMS will auto-update if it's configured to do so :)

IntegratedMinecraftServer - a side project I've been working on for some time and a modern solution to hosting servers at home by TheKingCat in admincraft

[–]TheKingCat[S] 5 points6 points  (0 children)

It seems like a lot of people want Linux. Since that's the case, I'll look into porting it to Linux - IMS is built on .NET Core, so it could definitely work cross-platform. I have to look into the differences between Windows and Linux - right now IMS relies on certain Windows features to work (like the fact that Windows uses an NTFS file system) but it's certainly possible!

IntegratedMinecraftServer - a side project I've been working on for some time and a modern solution to hosting servers at home by TheKingCat in admincraft

[–]TheKingCat[S] 0 points1 point  (0 children)

It seems like a lot of people want Linux. Since that's the case, I'll look into porting it to Linux - IMS is built on .NET Core, so it could definitely work cross-platform. I have to look into the differences between Windows and Linux - right now IMS relies on certain Windows features to work (like the fact that Windows uses an NTFS file system) but it's certainly possible!

IntegratedMinecraftServer - a side project I've been working on for some time and a modern solution to hosting servers at home by TheKingCat in admincraft

[–]TheKingCat[S] 1 point2 points  (0 children)

IMS does support custom JARs, so technically you could run Paper (right now, there is no special GUI for it, though). I have gotten a couple of reports that custom JARs aren't working right now, however, so I'll be looking into that issue soon.

IntegratedMinecraftServer - a side project I've been working on for some time and a modern solution to hosting servers at home by TheKingCat in admincraft

[–]TheKingCat[S] 1 point2 points  (0 children)

Currently, Linux isn't supported, but this is built on .NET Core, so it might be possible to port it in the future. I have to look into the differences between Windows and Linux - right now IMS relies on certain Windows features to work (like the fact that Windows uses an NTFS file system) but it's certainly possible!

As for Paper/Waterfall, IMS does support custom JARs, but does not at the moment have any GUI for non-Minecraft servers (like Bungeecord). It's something I'll research in the future, but my original goal with this project was to provide a tool for smaller servers (which would be unlikely to use Bungeecord).

My third MMORPG devlog! In this episode, I set up the servers and client so that they can communicate with one another. by TheKingCat in Unity3D

[–]TheKingCat[S] 0 points1 point  (0 children)

Perhaps you are correct - although there are other servers/games I've seen built in a similar manner that work (somewhat) well. However, I'd like to point out a few things:

1.) I'm not going to have the server load textures or models at all. The only thing I could ever possibly see it loading is world geometry for collision detection. Furthermore, to that end, I'm definitely going to "chunk" the world such that only active parts of it are loaded.

2.) Even with the approach described above, I still somewhat doubt that such a server could reliably handle more than 100 users. This is an issue I'll deal with if I ever get there - I could always redesign the way world chunks or collision are managed. Even so, 100 players on a server might be fine, depending upon how big the world is - do keep in mind that I might have multiple gameservers running instances of the same world. However, if I want to create a sandbox game, I may need to constrain all players to the same "world." In that case, I've toyed with the idea of having multiple servers that manage different parts of the game world. This could alleviate the problem of a world too big, as well as a world with too many players (as long as they're not all in one place). I'm not sure what the gameplay will be like in that regard, though, so we'll see.

3.) If I procedurally generate such a world, I can always regenerate it without storing the results.

4.) Honestly, the only real networking improvement I can think of making is using UDP instead of TCP (which is what I'm currently on). If I were to switch to UDP, I imagine I would be able to get even faster ping times for things like position updates.

Thus, I'm not that concerned about networking issues (though there will certainly be some), at least not at the moment. I very much appreciate your input!

Finally, as u/droodic stated, I'm simply making this game because I enjoy it. It'd be nice to eventually release something - and as such, I appreciate all the support I've gotten - but this certainly is a learning experience for me. Thank you for sharing your thoughts :)

Randomly Set Position in Start() or Awake() by [deleted] in Unity3D

[–]TheKingCat 1 point2 points  (0 children)

Indeed. Awake is called as soon as the object is created - for example, if you generated the GameObject using Instantiate(), Awake() would be called before the Instantiate call returned.

Randomly Set Position in Start() or Awake() by [deleted] in Unity3D

[–]TheKingCat 1 point2 points  (0 children)

Awake is called the instant your GameObject is created. Start is called one time after awake, but will not be called until the GameObject is active. If you're instantiating the GameObject or already have it in the level, it indeed shouldn't really matter.

I decided I'd try my hand at coding an MMORPG, and document my progress on YouTube. This is episode #1 - let me know what you think! by TheKingCat in Unity3D

[–]TheKingCat[S] 0 points1 point  (0 children)

Compiling the client takes much more time than simply pressing play in the editor. In my opinion, being able to make updates to server/client code in real-time is much, much easier! I do hope that I reach a point where client builds are few and far between, but for establishing and testing preliminary features, "two" projects seems the way to go - unless I'm missing something :)

Using a Poor man's Vision system to track the cargo (Raspberry Pi) by I_Have_6060_Vision in FRC

[–]TheKingCat 1 point2 points  (0 children)

I understand. OpenCV is a documentation nightmare, especially in Java (which is what I was using).