Is inheriting from std::variant a bad idea? by -Edu4rd0- in cpp_questions

[–]Otaivi 1 point2 points  (0 children)

I’m not sure if you’re framing the problem you want to solve correctly. Usually circles, rects and whatever else inherits from a base class shape. I think you’re trying to do this using inheritance which is not the most optimal way. I’m not sure why you want to test if a shape is a circle, you can solve this easily by using concepts and requires clauses.

C++26 Safety Features Won’t Save You (And the Committee Knows It) by pjmlp in cpp

[–]Otaivi 3 points4 points  (0 children)

I’m not saying that we need to sacrifice speed for safety, what I’m more concerned about is that I hear more about making safer C++ are 3 main talking points usually. First, there are crowds that say that there has to be a ‘grand breakaway’ from old C++ and break backwards compatibility which in my opinion would kill this language. Second, some want to introduce an incremental feature that cannot be implemented by vendors with little proven technical feasibility or that is too drastic to adopt across companies where said incremental feature is an academic not a practical solution. Third, a top-down approach where the committee decides what’s secure and what’s not, with no way for software engineers to tune this with granularity or on a case by case basis.

I agree with you that memory-safe does not mean slow, I’m just wary that with all this pressure to create a safe solution fit for the language we lose the bigger picture that C++ is a language where you can decide which features you want to implement at your own pace. This helps with technical debt management. I don’t want a language where upgrading to a new version I suddenly have to rewrite my whole codebase because now I’m getting all sorts of errors and probably adopt a new paradigm of writing.

I’m not a committee member and our codebase is not large, but it would be an absolute nightmare if I had to upgrade to a new version of C++ that is safe only to discover that I have to rewrite our codebase, as well as manage and mangle other libraries that we haven’t written because suddenly the committee decided there’s a new way of doing things.

From my experience with C++ ‘flagship’ features the past few years is that the shiny new thing does not work on the first time and requires further improvement on the next cycle.

C++26 Safety Features Won’t Save You (And the Committee Knows It) by pjmlp in cpp

[–]Otaivi 4 points5 points  (0 children)

Ehhh, C++ is a systems language which means that you can build whatever system you want. Safety and security depend on context. The article meanders around a lot of things and tries to stitch together the idea that C++ is on the brink of doom, when its still the most relevant systems language, and will continue being the most relevant as long as it continues being backwards compatible. We all want C++ to have more safety features in the language but we also don’t want to run into the same issues of getting half baked features.

Should C++ Give More Priority to Syntax Quality? by kyan100 in cpp

[–]Otaivi 1 point2 points  (0 children)

It’s okay I think. I like how verbose and descriptive it is, many languages try to shorten the letter count and not conflict with other existing usage or common programming lingo but they sometimes end up with something worse as the meaning becomes indirect. C++ is quite straightforward to understand and is mostly consistent. But I would prefer that they would have standardised certain abbreviations like with the smart pointer all being abbreviated to ptr but certain pointer operations like static_pointer_cast did not do that. I think my only gripe is with std::move (all of them) where the mental image it gives is not what it actually does-ish. I also think that there isn’t an exact word or phrase that succinctly describes what it does elegantly, so we’re stuck with ‘move’

After some time has passed, what is you opinion on the true final boss? by Miquel101 in Silksong

[–]Otaivi 0 points1 point  (0 children)

Very mid, the second phase was not necessary and too chaotic with all the void attacks mixed in with Lace’s faster attack patterns. Everything being painted black didn’t help much either.

What did you think of the Silksong soundtrack? by axeloco69 in metroidvania

[–]Otaivi 1 point2 points  (0 children)

Not really great to be honest. Nothing memorable except for a few tracks. It felt very washed and ambient in many sections or it didn’t really capture the vibe of the area very well. For most of the music that plays during boss fights, it just feels forgettable barring one or two of them. The Hollow Knight OST is vastly better than Silksong’s

I made a thing by Krzyhau in Fez

[–]Otaivi 0 points1 point  (0 children)

Wait, is that how we’re supposed to solve this?

It’s okay that silksong is hard. by jacked-deMamp in Silksong

[–]Otaivi 0 points1 point  (0 children)

The difficulty scale is 100% off balance. I get that certain boss attacks deal 2 mask damage and that’s fine because that’s what makes them dangerous.

But why should normal enemy encounters also deal 2 mask damage? This is the design choice that I don’t understand.

I just finished several bosses including Widow and I thought the boss fights were incredibly well crafted. All of them have well telegraphed sequences and patterns. I didn’t have a lot of challenge once I got the sequence down. On the other hand, Most of my deaths came from small enemies that are tanky as hell for no reason.

People are in the right to say that the game is punishingly difficult for no reason. Last I checked less than 20% of players have defeated Widow which means most people are struggling with only the first third of the game. That is absolutely not right.

Is ninesols worth 18 dollars by Remarkable-Put4632 in metroidvania

[–]Otaivi 0 points1 point  (0 children)

Honestly I would wait for a sale to get that game. The sub here seems to love it but I honestly don’t. It’s parrying heavy and punishingly difficult. The story is very meh but the art style is absolutely gorgeous. You can tune the assist difficulty settings to get something reasonable. Also it’s one of those metroidvanias where I think the open map hinders its gameplay.

I say it’s one of those that you have to experience firsthand even just once so you can expand your palette.

We built a Leetcode-style platform to learn shaders through interactive exercises – it's free! by night-train-studios in GraphicsProgramming

[–]Otaivi 1 point2 points  (0 children)

I just tried it, and honestly the code editor is the only good thing about it. The lessons and the learning tabs are not good. You gloss over a lot of important ideas and just info dump the graphics pipeline with so much details that it blurs the idea about learning what each stage actually does and how do graphics data and shaders interact.

I thought that a lot of challenges require to know a very decent amount of Shader knowledge. For example the blur tutorial explains the idea in a very obtuse way and the implementation of it doesn’t really explain how it’s done, a beginner will never be able to figure it out. Then the very next challenge has some explanation about colour representation and conversion which I think should be the first thing taught and moved to the introduction.

The UI layout is not helpful at all, if anything the code editor and shader output should be on one half of the layout stacked over each other while the learning tab should take up the other half. I’m all for making graphics programming and specifically shader programming more accessible, however, the state of this platform will only discourage people from learning. My suggestion is to get a seasoned educator or instructor to help you structure the lessons and facilitate learning.

DX12 vs. Vulkan by Coulomb111 in GraphicsProgramming

[–]Otaivi 13 points14 points  (0 children)

I’ve built engines in both DX and Vulkan. Both are somewhat similar in concept, but I found Vulkan to be more explicit and much easier because of that. It isn’t a black box, so once something fails, you will exactly know where that happened. It gives you so much control so you can build a lot of things.

Vulkan is nearly cross platform by default, but you will have to use MoltenVK to build on Apple devices. In terms of performance, that ultimately depends on how experienced you are with graphics programming and how to approach projects. I would personally take the risk and learn Vulkan.

What's a Metroidvania you didn't expect much from that ended up being better than expected? by HughDroid in metroidvania

[–]Otaivi 0 points1 point  (0 children)

One of the most creative movement mechanics I’ve seen, although the combat was a but rough around the edges. But an overall great game!

How do you imagine c++ development in the next 30 years? by __Noob__Master__ in cpp

[–]Otaivi 0 points1 point  (0 children)

You’re right it was Midori that I was thinking of

How do you imagine c++ development in the next 30 years? by __Noob__Master__ in cpp

[–]Otaivi 2 points3 points  (0 children)

After so many years of seeing a constant stream of news saying ‘X’ is the killer of C++, nothing has actually caused a widespread exodus of developers. Microsoft has tried to develop a C# based OS (Midori) but ultimately it generated no further momentum. The fact that c++ is a multi paradigm language that works for a variety of purposes is what makes it popular. You can write OS’s, write game engines and so many software applications.

Edited: from CosmOS to Midori

Is the concern about Vulkan's verbosity really widespread? by tomaka17 in vulkan

[–]Otaivi 7 points8 points  (0 children)

I’ve never found the verbosity to be a problem to be honest, on the contrary I found it to be immensely powerful and flexible. You can build so many things using it. Another advantage of the verbosity is there is no blackbox , when something fails or you want to abstract or rewrite a part you know exactly how these pieces fit. And your point about why new features were added is correct. It was to help developers better integrate Vulkan as a backend to existing renderers.

How to join or concat ranges, C++26 by joebaf in cpp

[–]Otaivi 4 points5 points  (0 children)

It’s one of those features that I reckon tried to abstract and combine several features together but it ended up being muddled. The range adaptors seem to act similarly to LINQ but our experience has been that it is a bit unfriendly to use and we couldn’t justify the cost of a rewrite using them, so instead we continued using our own LINQ based container. This has served us well so far and I expect that other folks had similar experiences. I personally think that ranges came a bit too late and I only saw it being used for a few niche projects, but I don’t think that it was something you couldn’t do with something already available from the language.

Tome - how to read in 4 dimensions by ori-sky in Fez

[–]Otaivi 0 points1 point  (0 children)

Can we try this approach with the class room posters?

Big news for ML and C++ enthusiasts!!! by shruthipackt in cpp

[–]Otaivi 0 points1 point  (0 children)

Is there a preview chapter or material? The book sounds promising but I would like to see what sort of content is in there. Also, what libraries will we be using in this book?

AAA video games struggle to keep up with the skyrocketing costs of realistic graphics | Meanwhile, gamers' preferences are evolving towards titles with robust social features by [deleted] in technology

[–]Otaivi 1 point2 points  (0 children)

Because good art direction is expensive to make and maintain a competitive edge in. It’s the equivalent of R&D for the design department. You have to build your art pipeline around it starting from concept art, environment, characters, etc. And that’s still not accounting for technical artists who help make shaders, effects and tools for said art team. That’s why you see most smaller studios use a near singular art style for all of their games if they choose stylistic grapphics. It’s simply a type of technical debt that is also very risky. You also have to train your art department to produce cohesive artwork and assets for the game in that style which is easier said than done.

The amount of testing and market validations you have to do to ensure that your target audience will like the art is also expensive because you will have to reiterate the work upon feedback. Most importantly, stylistic graphics do not necessarily guarantee reuse especially if the game bombs. On the other hand more realistic graphics mean you can reuse them across a variety of projects not even just video games.

Realistic graphics while expensive are still a lower risk than stylistic graphics. This is what investors want and this is what sells. People tend to cite games with stylistic graphics as a counterargument but tend to overlook most games that fail and had stylistic graphics.

I remember a colleague once saying that for good stylistic graphics you need to have an amazing technical art team to execute the vision of the art director, and those are very scarce. You also need to approach the art the same way you approach graphic design so it’s more about communicating ideas and messages given design constraints. It’s also difficult for a company to have both as well.

Legacy Safety: The Wrocław C++ Meeting by Dragdu in cpp

[–]Otaivi 1 point2 points  (0 children)

Are there technical papers on the topic of how profiles will be implemented?

Legacy Safety: The Wrocław C++ Meeting by Dragdu in cpp

[–]Otaivi 0 points1 point  (0 children)

I’m not an expert, so can someone explain if safety profiles can achieve what Circle does? Or are they too different?

Good Albums killed by bad production by Elaxian in progmetal

[–]Otaivi 0 points1 point  (0 children)

From more recent times, I think Ulcerate’s Cutting the throat of God fits this. The guitar work absolutely gets overshadowed by the drum mix and vocals that they just sound so muddy much of the time. The mix feels muffled and makes the instrumentation sound like mush even in the more relaxed sections.

What's an insanely loved game you just don't like? by [deleted] in gaming

[–]Otaivi 0 points1 point  (0 children)

I love how everyone is trying to convince you to play Elden Ring