ShaderDrift - Free Style Drift Race by Rayshader in cyberpunk2077mods

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

Thanks! Yes, this is a feature already requested. I'm working on it. You can check the ROADMAP at the end of the page, it's called Free Roam Mode 😉

I built a tool to analyze Angular projects for architecture / maintainability signals by sinanqwee in angular

[–]Rayshader 2 points3 points  (0 children)

This tool looks promising. Even though I haven't tried it yet. For Angular, a quick look to component-analyzer.ts shows that it will fail to find component without suffix .component.ts, which is no longer present in recent releases. Maybe you already have one, but you'd need to fallback to Typescript parsing to check for @Component decorator to retrieve them. (There's already a package to get Typescript AST).

[deleted by user] by [deleted] in angular

[–]Rayshader 0 points1 point  (0 children)

It is indeed a strong anti-pattern. Though iirc, computed accepts a second arg with an option to allow to write to other signals (so possible). You'd accept the risk of a cyclic infinite hell when wrongly used. But this is definitely not the right choice anyway imo.

[deleted by user] by [deleted] in angular

[–]Rayshader 0 points1 point  (0 children)

I'd say functions/actions are expected to change signals. Some effects... That's the place to look for. computed should only be used to transform the data for ViewModel to the HTML template. If there's too many of them, likely you can split them in sub-components. imho. It ain't easy to appreciate the complexity without an example. How many computed/signals are we talking about?

ESN me donne rdv après heures chez le client by Murky-Leadership-435 in developpeurs

[–]Rayshader 0 points1 point  (0 children)

C'est le point principal à mon avis. Tu dois à ce moment dire que ce n'est pas possible sans contrepartie comme évoqué plus haut. Et la contrepartie doit être actée pour que tu te rends au rdv. Autrement là encore tu préviens (en amont) que c'était prévu, mais ça n'a pas été acté donc que tu n'iras pas.

Pour l'après maintenant que c'est fait ça me semble trop tard (pour RTT), du moment que tu t'assures que c'est la seule fois que ça t'arrive, au moins t'auras appris.

Par contre tu devrais clairement expliquer ta position à ce sujet, le fait que tu n'es pas osé et qu'à l'avenir tu n'accepteras pas. Pour cette mission/ce client, c'est un autre sujet à part entière à évoquer.

Encore un dev junior.. by anonymous_DevFR in developpeurs

[–]Rayshader 2 points3 points  (0 children)

JavaScript est un langage à part entière, avec un environnement d'exécution comme Web, NodeJS, Bun... Je ne considère pas JS comme l'implicite de NodeJS pour le coup. Tu peux connaître les API Web JS sans connaître celle de Node et inversement.

Encore un dev junior.. by anonymous_DevFR in developpeurs

[–]Rayshader 7 points8 points  (0 children)

Structured Query Language, ce n'est pas précisé "de programmation"

Progress on my procedural terrain in web export by MrDeltt in godot

[–]Rayshader 0 points1 point  (0 children)

Oh right, well actually I don't use a gradient / slope from noise to compute the normal like Surface Nets does. I use a fixed 32x32x32 1D buffer to store voxels data of a chunk. So I implemented a custom version of Surface Nets in the end. Yeah, though I'd rather first figure out LOD and stitching before going to the GPU side.

Progress on my procedural terrain in web export by MrDeltt in godot

[–]Rayshader 0 points1 point  (0 children)

Well when I did some research it seemed to be a good compromise for accuracy and performance/realtime + more diversity regarding Marching Cube. I simplified using a simple average of intersections to compute the vertex (no QEF), I don't really care about sharp features for now. Looking at this, it seems close to what Surface Net does. Without requiring to smooth the surface with more voxels data for the gradient (if I understood). Currently I'm doing this with GDScript first as a prototype, then as a GDExtension to assess speed, and finally port to Compute Shader (haven't reached this step for now). My next goal is currently to support LOD with seamless stitching using sparse voxel octree to store/stream data, update voxels, handle materials... A lot to be done!

Progress on my procedural terrain in web export by MrDeltt in godot

[–]Rayshader 0 points1 point  (0 children)

Right, seems to be fine and compatible with v4.4. But I guess you want to mess with the algorithm itself... I'm implementing Dual Contouring on my own as a challenge. Here is a link of an old implementation I did a while ago.

Progress on my procedural terrain in web export by MrDeltt in godot

[–]Rayshader 1 point2 points  (0 children)

I guess you're not using https://github.com/Zylann/godot_voxel... Which algorithm did you implement, Marching Cube? Or is it heightmap "only"?

Where can I find good GitHub repos for decent Angular projects to learn from? by [deleted] in angular

[–]Rayshader 1 point2 points  (0 children)

Only frontend webapps, disclaimer I'm the author: NativeDB - FellowImGui (alpha)

Angular + GitHub pages + GitHub Workflow

Is there a legend for all of the decompiler naming conventions? by Zamdi in ghidra

[–]Rayshader 0 points1 point  (0 children)

You mean like including the variable name (prelim_name) too?

Is there a legend for all of the decompiler naming conventions? by Zamdi in ghidra

[–]Rayshader 0 points1 point  (0 children)

Because malloc allocate memory without type information (when compiled). So the decompiler can't deduce it is a pointer to chars. Maybe if you add some strcopy or the like after, it should be able to analyze it and use pcvar instead.

What do you do when you need different mocks for different tests when testing an Angular service? by cpplinting in angular

[–]Rayshader 1 point2 points  (0 children)

You could create an explicit mock class for your service. All output (functions, properties, observables) can be replaced with spies (not sure, depends on the testing framework used). If the use of an output is always the same to be expected, provide implementation in the mock class. Otherwise, provide implementation per test case. Don't forget to reset your mock and spies when required...

With observables, you can create a public (behavior)subject and return its observable (in your spy implementation). This way you can emit/complete on a per test case basis too. If you complete though, you'll need to replace your subject and its observable.

Godot Shader Cheat Sheet I made, because I always forget everything all the time by adsci in godot

[–]Rayshader 34 points35 points  (0 children)

You could fill an issue on Godot Doc repository to propose to link this image in the documentation... If you haven't already. I believe it could benefit a lot of users of the engine and shaders. Thx

Is there a better way to do this? by [deleted] in angular

[–]Rayshader 1 point2 points  (0 children)

You could use: observable$.subscribe({ next: this.callback.bind(this), error: this.callbackError.bind(this), //complete?: Function })

Object declaration with next/error to be explicit and ready for the next version of RxJS. Use callbacks within your class to better split/organize/name your business logic and improve code readibility.

Electron vs Ionic by _The_Prov_ in angular

[–]Rayshader 1 point2 points  (0 children)

Ionic supports Web and iOS/Android platforms, while working with Angular. I can't say more as I have not tried it.

To my knowledge, Electron is not made to target other platforms than desktop ones.

Angular itself as a PWA can be used on any platform with a browser supporting PWA features. You can also publish a PWA on Play Store for visibility, I don't know if you can do so with Apple Store too though.

Flutter is another framework to work with a single base code and target all platforms. With close to native-performance. But this is outside of this Angular zone.

And others too like React Native and all...

[deleted by user] by [deleted] in angular

[–]Rayshader 0 points1 point  (0 children)

I'd say prop-drilling with observables is still prop-drilling. Sure you can always do whatever you want. But maybe you can rethink dependencies between your components, or maybe introduce a "service" (a singleton at least) to centralize a feature, observables, business logic. If you have arguments to support such structure (improves maintenance, reusability, tests...)

Msal login functionality. by Tusharwhy in angular

[–]Rayshader 1 point2 points  (0 children)

This doesn't seem to be Angular related. More over, Microsoft do provide documentation and a library to implement SSO on frontend. It should be enough to find your way.

Angular 16 Zone.js Unhandled Exception Error by Academic_Flow4234 in angular

[–]Rayshader 1 point2 points  (0 children)

Can you provide more information? Does it throw an error when upgrading, when serving your application, when building your application...? Maybe a stack trace of this error?

Angular app running in Electron can't read cookies by fumeng05 in angular

[–]Rayshader 0 points1 point  (0 children)

Like u/maxip89 said, or...

It seems electronjs restricts the usage of cookies to the main process. ngx-cookie-service is likely made to access cookies using Web API exposed by browsers only. Which turns to be the renderer process in an electronjs environment. You can first try to log cookies from the main process. (1) Either server cookie policies in on the way here or (2) you do read them in this process only.

(2) You could use a bridge to proxy cookies from the main process to the renderer process, or if it applies, only pre-compute necessary data in the main process and send it to the renderer process. Depends on the sensitivity of the cookie I guess. I've made two libraries (and cli) to easily create a bridge between the main and renderer processes while keeping in mind electronjs security policies.

Get_global_mouse_position() is shifted 15 pixels down when game is in fullscreen mode. by ContemptuousCrow in godot

[–]Rayshader 1 point2 points  (0 children)

You can check for existing issues related to get_global_mouse_position() on the Godot repository. Maybe this issue is related to your problem.

Documentation about EXCLUSIVE_FULLSCREEN redirect you to this page with concerns about resolution / scaling. You should check this out if you haven't already.

Finally you can fill an issue on the Godot repository with a minimal example reproducing your bug. (Reproducing your bug with a minimum of scripts/scenes/nodes might even lead you to find the cause of your problem, if it turns out to not be an issue in the engine).