Advertisement

Latest architecture Activity

Too many managers?

@Jikoob If it works for you then there isn't anything really wrong with it.

Myself I use an asset manager that handles anything that can fit under the category of an asset, images, sound, fonts, models, maps, …

If you make a generic enough manager you can simply add an interface to allow new asset ty…

6,855 views
Advertisement

@Juliean Thank you this is useful. It has changed my way of thinking and approaching my engine. 

2,228 views
Architecture for crossplatform (PC + mobile) UI layout, sizing and nativity

Dreadpon said:
Did anyone try to solve this already?

People have had good solutions for several decades now. The problem isn't new.

Dreadpon said:
Surely there aren't 2 separate UI systems that are hardcoded into each edition of the game?

Two? No, that number is far too low. Often the ratios are 4:3, 3:…

2,089 views

Brian Sandberg said:

If you want to do a webassembly build, you might also have a look at WebGPU, which is a modern abstraction that is far less verbose than Vulkan. It's supported in browsers (obviously), but there are also a couple of desktop implementations such as https://dawn.googlesource.com/d…

5,665 views

@hplus0603 @frob  Hey there! 

I just went through both of your messages. There's obviously precious insight in both, but I believe I will have to iterate on the implementation to consolidate my understanding. I imagine I could question or challenge some aspects, but that'd require a hindsi…

6,340 views

Torque networking was fine for the time. They computed remote entities based on sending inputs with occasional state snapshots (and maybe CRCs, IIRC?) so they didn't need to send large state dumps every network tick.

8,968 views

Yes, the pre-allocated mesh structure must live past a single frame.

Just like textures and shaders – you don't want to re-upload textures, or re-compile shaders, every frame.

5,408 views

Heisenberg33 said:
What do you think about this approach?

Whatever works for you is a good solution I guess but you should step back from hashing the name and instead generate a unique ID. Must not be a UUID but something similar could help. Its just (I don't think you'll get into that situation but)…

5,815 views

Shaarigan said:
Once it came to the decision how we want to manage memory in our engine, I did some research, asked some people about best practice (so what we programmer usually do ? ) and the lead dev of one of my previous jobs suggested this blog post about memory management in BitSquid Engine.

@s…

12,622 views
DinS
September 10, 2021 12:16 AM

@hplus0603 

Thanks for your detailed reply, and for pointing out the existing models.

I admit this article is a bit length. I'll start talking about the real contents in the following articles, and keep them concise and to the point. 

4,848 views

whitwhoa said:
would that not just be a fancier version of my current debacle?

Not inevitable. Using shared_ptr is a case of being dependent on it's implementation, I'd make my own “ResourceHandle” and return that instead. This way you can also make access to the underlaying pointer const and const m…

6,016 views

cozzie said:
Hi. This article has been there for a while, but imho the core concept still stands: https://realtimecollisiondetection.net/blog/?p=86

Yes, this is good article, but what about sorting and culling for instanced(grass, bushes, trees) objects ? It can reduce performance. I think should con…

6,104 views

Yes, you're right. 

The difference is that your manager in one scenario needs to provide full control over the resource data in the background. You have for example to define an interface to allow handles to increase the ref-count on copy, decrease it on destruction, give access to the data loc…

14,053 views

1000 players isn't by itself hard, assuming the simulation load per player is low, and somewhat depending on the size of a tick. If you're sweeping a sphere across a static geometry with precomputed collision, that should be super easy.

Of course, using optimized libraries and high-performance runti…

8,697 views

Ok, thaks for all your replies, they help a lot.

10,312 views
werekarg
February 17, 2020 02:19 PM

cocos creator, which has a similar node-component system, uses events to communicate between components of the same node. for all intents and purposes, it works well.

i'm using signals (https://www.npmjs.com/package/@robotlegsjs/signals) and ioc/di (https://www.npmjs.com/package/inversify) to implem…

4,304 views

@JohnnyCode yep, I have read that it is possible to attach multiple fragment shaders to the same shader programs, but only one of them can have void main() entry point

But even wiki says that it's a good way to get weird driver bugs. As you said, I can do some preprocessor magic and concaten…

5,362 views
Advertisement
Advertisement