#HaxeNXCompiler: Create homebrew with Haxe for the Nintendo Switch!
1 messages · Page 2 of 1
Estoy hablando de VS Camellia v2.75 xD
me cagaste de verdad 😭
Uh, era la segunda, ok xD
Uh.. Pero el juego me va a cargar la sección de BF creo xD
Y no tengo soporte para las vocales (solo un archivo de música a la vez)... Tendré que unir ambos archivos hasta que agregue algún soporte para estas cosas de fnf
Uh.. Dejaré decidir a Moonchart qué formato de chart es ese xD
No tengo idea
Psych tal vez?
Pa mi que creo que se salio del número del lane esperado y el juego no le va bien eso xD
tmb
Uhhh...
Me inventó el Mario Kart 9 xD
Apuesto que si lo dejaba más rato me iba a, o llenar la SD o la RAM si realmente estaba escribiendo datos xD
OffBeat was originally a Wii U game called OffBeatU.
Here is the last recorded progress I made on the game before I couldn't continue due to instability and issues of Leafy Engine
You can also see how the same idea was different on the Wii U compared to what I've been showing on the Nintendo Switch
https://cdn.discordapp.com/attachments/1366529844791345192/1412972801614282913/2025-09-03_21-26-44.mp4?ex=68ba3cf7&is=68b8eb77&hm=f381e25f61f187718718fedc7475441404b51249f01e1b37df783a4425e931a9&
siempre las transiciones entre escenas son clean
Como asi?
Si te estoy diciendo "como asi?" es porque no entendí que quisiste decir xD
El tema de transiciones aun no lo he implementado en el engine de la Switch porque me rompía todo, realmente solo estoy usando con el alpha de la cámara principal
Y en la Wii U.. Eso era mucho pedir para el engine ese xD, realmente seguir con la Wii U desafortunadamente no era muy viable
😔
Random thing:
This project wasn't supposed to exist, or at least not yet. Before I got the Switch, or before I modified it, my idea was not to touch the homebrew part, but well, it was inevitable, especially since I'd known for a long time that I could use hxcpp on the console https://cdn.discordapp.com/emojis/1224557848059580466.gif?quality=lossless&name=Eevee_Chipi&size=96
Damn, this is difficult to implement, especially with the batching thing involved, which makes everything a bit more difficult in general xD...
haces batching manual???
Como así?
Ps que tenga entendido no como tal, creo los 4 batch, uno por lane y ya luego agrego cada nota a un batch según lane qué le corresponda
Ya luego en general actualizo su posición en Y y ya
ehh
no entiendo
Tons cual es tu pregunta? Pq yo tampoco la entendí y respondí lo que pude xD
Mmm
Es que literalmente tengo un array con 4 batches, esos los añado al state qué se actualicen solos en update y render
Al momento de generar las notas, si la nota es del lane 4, irá al batch 4, si es del lane 1, ira sl batch 1
Luego de allí actualizo la posición de todas las notas de cada batch y ya
Así es la lógica que llevo
Hay un array de solo los batchs qué contienen las notas separadas por lane, y les paso los datos de la nota actual que esta en otro array qué es del chart como tal cargado, mayormente la posición y el valor del hue-shift
Si no es la mejor forma, pos bueno puedo ver que hacer pero eso me había solucionado el problema inicial de tener muchísimos objetos y llamadas de OpenGL
osea puedes hacer lo que hace flixel
que es que tiene un stack de draw calls
y reutilizar/fusionar los que tengan el mismo grafico y shader
osea, batching automatico
Bueh, podría, pero lo que tengo por los momentos sirve bien
Igualmente mi lío esta nomas con la holds, que no figuro como hacerle mayormente con el tema del.. Eh, que se corte mientras la mantienes en el receptor, es donde ando perdido, porque el resto bueno supongo que puedo estirar la el cuerpo de la hold en función a la longitud qué debe tener y eso y poner la punta al final de ello, así al menos ando pensando, lo único que no es la parte del corte xd
Nah, I give up on holds for now. There's no way I can implement them without breaking the entire gameplay.
I'm going to focus on other things I know I can do xD. It bugs me because without holds, I can't move forward with other things either
This time there's no OffBeat, no Switch, not even Haxe, just a fox.
oh no hes crying
Nah
Random fact:
There is a port of StepMania 5 for the Nintendo Switch:
https://github.com/retronx-team/stepmania-nx
But it no longer works (probably due to changes in the Switch firmware and homebrew?).
Although my game OffBeat is nowhere near what a StepMania build could offer, I think it would be a good alternative for playing SM charts (and others charts from other VSRG games) on the console since that port doesn't work
wha
Will you add modcharts
I'd love to, but I have to research how these things work, especially the issue of altering the hold note, but first I have to get the hold note working properly.
The new version of HaxeNXCompiler will have significant changes and will finally no longer be based on HxCompileU..
I'm used to putting package source;, but if it were just package;, then it would be Main and that's it.
ohokok
A new version of the Switch system was released a few days ago, and there are already beta versions of Atmosphere, which is the custom system used for this.
However, Nintendo changed many things internally and... Also something related to memory management, I don't think I want to try this new version until all the homebrew I use is updated to those changes.
I'm also a little worried about how the hxcpp I use will handle these changes, since it's already a little broken and doesn't free up all the memory when exiting, and with these changes, I don't know if things will get worse or not.
So for now, I'll only test this project with version 20.4.0 of HorizonOS and Atmosphere 1.9.4 along with Haxe 4.3.6. I'm sure Haxe 5 should work, but I haven't tested it.
wha
Another reference to the Switch engine
(I haven't posted more about it because I'm figuring out how to optimize the renderer xd)
DID YA NEED HLEP
IM GOOD AT OPTIMIZING
-# and breaking a lot of things
I'll keep you in mind, but I've already found the level I like and that I've been able to reach (I'll see if that level is enough for my game or not xd)
I would like to be able to make a chart for this song as a test in the OffBeat game
But I don't know how to make charts, especially not in the style of Dave And Bambi
https://youtu.be/HKL7-adBPrw
OH GOD
BPM: 128-32768
Genre: Extratone
From April Fools 2025!
For more direct updates on my music and other works,
Join my Discord!: https://discord.gg/CKABNpNWtN
To support my work and help me experiment more,
visit my Bandcamp!: https://a-saph.bandcamp.com/
But in general, I've always wanted to do something with A-Saph's songs (like a modchart) ever since I was with Slushi Engine heh
@blissful otter te conoces alguna lib de Haxe de GLM? solo encuentro algunas incompletas o viejas, idk queria hacer el cambio a GLM pero no me doy claro como hacer los bindings y honestamente tampoco le tengo ganas xd
hay ports
pero para el uso con opengl ya hecho
no
eso tienes que hacerlo a mano
Native Haxe functions for graphical linear algebra (à la GLM: https://github.com/g-truc/glm/tree/master/glm) - hamaluik/haxe-glm
Wa
Bueh ni modo, si lo hago, lo haré público xD
Tanto tiempo y no hay algo así público
Aun que, tantas libs que he estado haciendo y si bien son para la Switch, no deberían diferenciar en nada de sus, versiones normales
Así que tengo un buen port de SDL2, o de OpenGL 4.3 ES y así xd
Igualmente no las haré públicas hasta no sacar el engine
Da igual, gracias de todos modos xd
I don't have anything to post here so.. I'll leave a leafeon and that's it
Bad news
Unless I missed something, the latest hxcpp (commit 767fe94) doesn't even start on the Switch.
It's a good thing I didn't update the hxcpp fork of this project directly,
So, I'm not going to update hxcpp, and we'll stick with the version from two months ago
For the DS, it's good
holy
But I won't do it for the Switch, unless I want to mess around with something like modules for Atmosphere and don't want the weight of hxcpp, but something more straightforward
Just a stupid test heh
I have finally finished everything necessary to release version 3.0.0 of HaxeNXCompiler. This new version took me a long time to complete, between the documentation and, above all, having to redo the entire tool.
https://github.com/Slushi-Github/HaxeNXCompiler
ask to roxy
Anything to avoid regenerating an entire texture just to change one character
Roxy?
fnf chat
Does he/she know how to generate text efficiently?
Right now I'm looking at something with stb_truetype, to see if it works well or if it blows up the engine, heh
yeah
ademas, podrias simplemente guardar tus caracteres en un spritesheet
y dibujar cada letra con batching
no creas una nueva textura, solo cambias la posicion de que letra quieres dibujar
Se, eso ando buscando xd
yay, errors :3
estas intentando usar ttf?
El formato de archivo dices?
cualquier archivo de fonts
Bueno, se
Pero el problema viene de otro lado xd
no creo que sea posible cambiar solo una letra intentando usar esos archivos
No entiendo muy bien la existencia de STB_TRUETYPE_IMPLEMENTATION y así
a menos que generes el spritesheet desde antes pero seria algo un tanto engorrozo y medio complejo de hacer
Nah, seguiré con lo que tengo
El error es que estaba definiendo mal ese STB_TRUETYPE_IMPLEMENTATION y me causa problemas con el linker
creo que para un engine conviene hacer un motor de texto
diomio
nokia aaaah font
Yeah xD
a
yo cuando vertices
Bueh pero felizmente ya hice el cambio a GLM en vez de hacer las rotaciones en el shader
Me costo una mierda usar la liberia, no por lógica de como se usa, si no por el puto hxcpp
estas usando operaciones solo en dos d? o usaste operaciones para tres d
No tengo ni puta idea a serte sincero
a
ese fov hermano
yo cuando matrix.rotate(angle * pi / 180)
o
x = x0 * cos - y0 * sin
y = x0 * sin + y0 *cos
para dos d es mas facil crear tus propias clases que hacer bindings de glm xd
si we
Afortunadamente en este proyecto no puedo poner algo como lo que puse de borrar System32 en Slushi Engine XDD
Fuera joda me gusta que haya conseguido otro proyecto con el que salir de ese engine de fnf, quedo con un mal ojo que no me estaba gustando pero que tampoco había mucho que hacerle ya
lime
queeslime
Lime
comprendo, es cal
Nah realmente fue un error cuándo estaba buscando algo y ni en cuenta xD
No ando haciendo nada con Lime para la Switch, y.. En general tampoco con el engine, ando cansado y hostinado del proyecto
no problema, el descanso es lo mas importante al final
It took me weeks, but I finally finished the text object with... Real 3D perspective.
shader or real 3d
👀
Real, In fact, the text is using a different mode of projection compared to the sprite.
It definitely helped me switch to GLM, even though the bindings are rubbish and I often resort to using C++ code directly
ortho vs perspective
peak
both sprites are 3D, but the text has the function for that overwritten because by default it doesn't work well with several separate sprites, the text gets... quite distorted.
I still need to improve the function that handles that.
But at least I'm no longer forced to use what the shader has
Ha, how stupid of me. Ever since I started working on the engine project, the audio engine always had a problem obtaining the audio duration. The version of SDL_Mixer I use doesn't have this function natively, so I used a separate library, and today I switched to stb_vorbis.
It turns out that the problem was always that even though I was using .ogg files, they weren't explicitly "OGG Vorbis" files. SDL_Mixer didn't mind and worked fine, but at least stb_vorbis didn't like that... Months without understanding why, and it was all because I was using a different type of the same file.
I have to be honest.
I don't want to talk about my problems in a public space, but...
Um... The Nintendo Switch game/framework engine project created with Haxe has been in a strange state for a while now. I stopped liking the project a while ago, and now I don't even understand the most important part of the engine, which is the renderer. I haven't achieved the performance I really want, but I also feel limited if I want more things, like shaders.
And above all, what's destroying me is the issue of shaders, because they're an important part of the OffBeat game. I can't leave them out.
The engine is in working order, but it's still nowhere near ready to actually make a game... Like the one I've been looking for for at least a year with the Wii U.
So... That's why I haven't shown much and I'm having doubts about whether to cancel the project and release it to the public in its current state (or maybe not even that, I'm not sure I want to make such garbage public), but that also means putting an end to HaxeNXCompiler (not definitively, but... Well, I don't have anything else to do on the console with Haxe if it wasn't the engine). I'm just not cut out for this kind of thing. It's not that I need a break from these kinds of projects, it's just that OpenGL is too complex for me, and I'm only destroying myself mentally and physically by maintaining a project that I'm growing to hate more and more, I'm the only idiot who's been working on this project (between the engine, the compiler, the OffBeat game, and partially the hxcpp fork) for three months straight, and it's exhausting.
Hey now
why you beating yourself up over reaching a bump in the road
there's absolutely nothing wrong with abondoning it, dropping it, or doing something else
if your skillset aint enough for now, nothing wrong with that
you've identified that you have a knowledge gap, stepping back and doing something else is actually the correct thing to do at minimum
there's many times where banging your head against the wall can be the right thing to do
and there's also a lot of times where it aint
you gotta figure out the threshold
and it isn't something static
The mind works like the body, if you're trying to lift something too heavy for you, its not going to move anywhere no matter how hard you try
if you're trying to tackle a problem that's too difficult/with missing context it isn't that its too hard to learn at all, it means you just haven't learnt what you need to learn to make where you are easier - it'll come with time
a lot of us in the server has been here :D
its not uncommon for programmers to have many unfinished projects x)
mix it up, do something you wanna do
That's how I am, it's part of my personal problems
I kept going because I genuinely don't have any other projects to focus on, and I used it to escape my problems.
If I quit this, I'm basically giving up programming and Haxe until I find something new to focus on, and I don't have any other hobbies
But... Yes, I'm not getting anywhere because I'm basically not learning anything.
I learned about Switch modding, its SDK is beautiful and very easy to understand, but I didn't understand anything about OpenGL
I suppose I should leave it...
I'll think about whether to make it public, or at least make the Haxe/C++ bindings public, as they could be useful for someone else's projects
Well, if the whole point was to run on a game console
why not explore making some simple game you like
It's a good idea.
But I had no other games in mind other than a rhythm game, a VSRG
(Or not so much, because they depend on libraries that Haxe library itself does not provide. In other words, it's not like those cases of, for example, thats LuaJIT libraries, which come ready to work on various platforms right out of the box. It's just the Haxe code with the @:native)
aveces es necesario saber cuando parar caun
Y eso no es algo que yo haya aprendido mucho
No he dejado el proyecto porque quería sacarlo adelante, me caga qué entonces llevo un año y 3 proyectos consecutivos que no han logrado lo que quería
Supongo que al menos iré sacando poco a poco las librerías como la de OpenGL aun que sigan enfocadas a la Switch, ya podrá haber alguien que le sirva como base y agregue las liberias nativas como tal supongo
uno aveces tiene una mala racha, es algo que aprendi con los años
glm 👀
Nah, esa no creo, apenas y es funcional y realmente hay mucho código de C++ directo por errores de compilación, esa a sido una liberia que no entiendo como hacerle bindings xd
Desafortunadamente yo no me tomo bien fracasar en algo
Porque acá siquiera puedo decir que aprendí algo, si no fuera solo lo de libnx (el SDK de la Switch), pero no puedo realmente llevarme nada a comparación de como fue con Leafy Engine y SDL2
Tons medianamente perdí el tiempo
Por lo menos este no llego a ser un proyecto tan popular del cual varios esperaran algo supongo
Pero hacer un motor de juegos y más para una consola siendo el único que lo hace, es medio terminar pegandose un tiro, para mi OpenGL es más de lo que soy capaz de entender
El engine de la Switch a lo mejor si te deje hacer un juego sencillo, dale que con batching y eso todo debería estar bien, te compro incluso un fnf
Y mi idea fue esa, pasar de OffBeat y ver fnf, pero, nah
Estoy cansado de esto..
tomatelo chill y descansa
Long sigh
Well, in the class responsible for the Switch's touchscreen, I left a function to obtain an approximation of the pressure exerted on a touch... I don't know how useful it is or what use I would give it, but hey, it's not bad that it's there xD
lets make paint professional edition in the nintendo switch 😱
colors ds nintendo switch port
I have no idea how to do that kind of thing and... There is this (although I don't think it's really a drawing program)
https://www.nintendo.com/us/store/products/colors-live-switch

peak
(i still dont know why the official version of colors for the ds doenst detect the touch pressure)
Este video lo explica todo (y es de donde quise yo ponerle eso al engine xd)
https://youtu.be/MWpgdLxilVY
Entra en SIHOO https://de.sihoooffice.com/GUINXU y consigue tu SIHOO Doro C300 rebajada con mi código: YTBGUINXU
O desde Amazon: https://www.amazon.de/dp/B0C3TNC785?maas=maas_adg_02F83433BEF5DCF7AA8F2E95D601F94D_afap_abs&ref_=aa_maas&tag=maas con mi código de descuento: YSIHOOSIX
La pantalla táctil de Nintendo DS permitía medir la presión ...
asumare, guinxu seguia subiendo videos?
waos
Pos, si xd?

Another "reference" to the engine name
waa..
i hate making documentation
And I've also finished a website for the project
Well. 24/12/2025
what the-
Mm?
I have everything ready for the launch of the engine
Now I just have to wait for the date when I want to make it public xd
merry krima
nx compiler will be a gift from santa
Yep, although well, the gift would be more like a... Framework engine, heh
And maybe a second gift, but I can't guarantee anything about that, and my priority is the engine itself (although continuing with OffBeat allows me to keep testing)
https://cdn.discordapp.com/attachments/1366529844791345192/1451799874852098129/OffBeat_20251220_005102_00.mp4?ex=69477d7f&is=69462bff&hm=005d36295335c5b93dabcc84040b3f77a0c01521fc40a8a0df1c5e082c341621&
it will be fun to port fnf base game to this for me
That will be my job
a is an ''expert'' making fnf engines tbh
Also in recreating them? Because it's that... It wouldn't be porting, it would be recreation
yeah
Mm, well
There are still some things missing that make FNF work, and... Also OffBeat, like clipping for hold notes.
if the framework is in an early stage, it would basically involve doing an fnf in opengl, pptimizing it would be easy, and grouping the notes, strums, and holds into a spritesheet would reduce the number of draw calls when batching, hmm, thats possible
if you want perfect performance, it would be better to create an internal framework specialized in what you want to do
really ?
ofc
tyty 
That's what OffBeat did. It had its own batching system when it didn't yet exist in the engine itself.
But it was very complex to maintain, and I want to redo it now to see if the engine's batching can handle it
hmmmm, if the notes are in the same ''z layer'' batching is easy, your framework should do it automatically
you make me believe that building fnf engines from scratch is as easy as drinking water
no it really isnt
the first time i tried it out i just copied legacy :soggycat:
it wasnt really fnf engine,
the very first one i did sucked
The engine's batching system works by grouping one or more sprites if they have the same texture, camera, shader, and shader values. If not, it will create another batch
its rare to do something well on the first try
Absolutely yes
hmmm
for basic things its good
thats how it should be done now that i think about it
I think it would work well for a FNF
yeah
i think thats the way how flixel does
optimizing draw calls in opengl is a headache
(if there is a shader, there is a more obvious draw call)
the bunni pancake treatment
It's not for nothing that I wrote that long text a few days ago; I really wasn't having a good time in that regard..
But anyway, let's see if I can make a more organized and functional PlayState today, even if it's without hold notes
Another fox
i hate hold notes
b o r e d f o x
me too
creating holds in parts is hard because you dont know how many parts you need to create, creating holds by stretching the sprite is hard because you dont know how many pixels you need to stretch
i h a t e h o l d s
and code the holds gameplay is boring
and making them work in the chart editor
......
We need a library dedicated solely to creating hold notes for this type of game https://cdn.discordapp.com/emojis/1233506342786826240.gif?quality=lossless&name=ShinxWag&size=96
shader values??
thats... weird
by example flixel saves color transform data and changes the shader data everytime smthing is drawn
so you can use a single shader in multiple textures, even when it haves different values
ur graphic system its like flixel or it has materials and stuff btw?
I'm only talking about post-processing shaders.
I use FBO for that, so... I didn't see how there could be several objects that had a shader with different values, so if one value is changed, it will go to another batch.
Although I'm having some minor issues with the z-order, it works perfectly. I even think it uses slightly less GPU usage than the previous batching system that OffBeat had
fr
I take back what I said, maybe with... 2 more playfields I'll reach the GPU limit (because of those shaders in the notes).
And I'm not going to overclock it from the engine, even though I've already seen something related to that in libnx
Well, from the renderer side, I don't have much of a solution. I've reached my limit there, and I can't optimize that
https://cdn.discordapp.com/emojis/1032643226055741450.png?quality=lossless&name=EspeonWhy&size=96
ohh alr
every note has its owj shader????
its own values??
Yes, but there are only four notes with four different values, so there are four more batches.
In other words, there is the upward direction note, which is green because of the shader, and that generates one batch, but if there is another upward direction note that is also green, it is added to that same batch
u can optimize them into 1 single batch tho
if u manage to swap values of a single shader while rendering
I don't understand
puedes hacer que sean un solo batch si logras hacer lo que dije
que es que 1 shader pueda ser un solo batch, incluso si sus valores son diferentes
incluso puedes juntar las strums en el mismo batch si usas sprite sheet
en opengl tienes programs [shaders] y buffers, el objetivo del batching es unificar varios objetos en un solo buffer y program, como resultado tienes solo una draw call
si tienes todas tus notas y holds en un spritesheet el batching es posible
Si fuese así lo hubiese hecho pero no encontré nada hacer del estilo, odio los ejemplos de OpenGL qué no van con lo que necesito o ni los entiendo
No le vi sentido a tener valores diferentes del shader y que afecten a un solo objeto en específico
que es lo mas optimo
que quieres hacer especificamente
Literalmente lo que dije, poder tener varios objetos que puedan tener un shader pero que este mismo tenga diferentes valores
Técnicamente se que se puede con instancias desde el vertex shader y eso
Porque ya lo hago con el shader que usa el batch para renderizarse
que valores, colores? rotacion?
Pero para shaders de post-procesado, no quiera esa cosa pq siento que complica todo, tons para eso use uniforms, pero a ese coste
que andan hablando chicos
opengl
Mejor no
es posible, solo tienes que hayar la manera de como, realmente no he tocado a fondo la api de OpenGL directamente
Lo que sea que tenga el shader, en este caso el valor del hueshift del shader
Mentira cual es el pedo
al final usaste vertex shader para eso????
que es hueshift
[no soy mucho del apartado grafico]
el hue es el color
basicamente
osea, cambiar el color?
El vertex shader esta mayormente para ajustar las proyecciones y eso, y de recibir los datos de las instancia del objeto que quiero renderizar y pasarlo al fragment shader
Funciona bien para el batch porque es interno y ya
Ponle que un numerico wue define el posicionamiento de colores de -180 a 180
creo que ssi de simple
es un angulo que define en RGB
estan varios formatos de color, el hue forma larte del HSL
hue, saturacion y luz
hmm, okok, para ese tipo de casos yo simplemente mandaba el valor al buffer
Pero no quiero esa misma lógica que si bien si me dejaría tener valores diferentes por objeto dentro del mismo batch, complica todo cuando se supone que quiero agregar un shader de post-procesado, que no tenga que modificar el batch ni el engine en si, quiero uniforms qué son fáciles de usar
y el shader se encargaba de lo demas
asi me ahorraba la necesidad de usar uniforms
Es simple de entender y hacerlo realmemte
koko
Psych podía tener valores del RGBShsder individuales por nota, y que recordará eran simples uniforms tons no se
Eso me recuerda
Saliendome del tema
Hacer un shader de cambio de paletas de colores fue estúpidamente fácil
seeh
bueno
a la hora de manejar en pcs
ese tipo de cosas las puedes ignorar
pero al modificar otros sistemas
tienes que ser muy cuidadoso
[simplemente manda el valor que quieres con los datos de los vertices]
No se que tan eficiente sea el mio pero el mio necesitas
Linea A -> paleta original
Linea B -> Paleta Cambio
Primero lee la imagen o el array de colores (generalmente es mejor la imagen por comodidad) y se process primero, después cuando se lee la información del color se remplaza
También hice un shader de 3D
flixel genera batchs basados en grafico y shader, pero puedes usar 1 shader para infinitos sprites
Ironico porque no lo necesito
Godot tiene 3D en sí po
El tema es que bueno, ya vi que el OpenGL en la Switch es, el de PC, no es OpenGL ES, es el OpenGL normal
Tons debería estar cerca de, como debería funcionar en una PC
De la coss mas complicada que hice fue este fondo
el software es parecido, el hardware es diferente
El shader del roaring knight solo duplica el grafico 10 veces, lo separa en 20 y cuando llega a 80 hace un fade hssta 125 que reinicia su posición
Cual es la idea de OpenGL es y opengl
No.. Es similar a lo que estoy haciendo yo?
Solo que bueno, el mio se basa en cámara también pero aja
no se yo aprendi a usar vulkan perdón
Que sepa OpenGL ES esta hecho para dispositivos móviles y asi, es lo que tendría un teléfono, una Raspberry pi pico
OPENGL ES, hmm, es como un opengl ligero
Pero la Switch por lo que se, tiene Vulkan (no se que versión), OpenGL ES 3.2 Y OpenGL 4.3 (máximo 4.5)
Y por qué no usa OpenGL ES switch
Burno al menos el target de godot en switch si lo hsce wtf
no entendí na
Switch no uss Opengl ES??
Y si no
con razón es un suicidio jugar en switch
Estoy usando OpenGL normal xd
Así viene de DevKitPro, vi que es OpenGL 4.3, no ES
tenganme paciencia soy tonta
what
Que solo tengo la librerías para OpenGL, no OpenGL ES
Tons así se quedó, a usar OpenGL, total si la Switch lo soporta
en camara tambien pero como es obvio no lo dije; pero tu estas tomando en cuenta los valores de shader tmb
Entonces es limitación de la librería madre (LibNX - DevKitPro) o?
Porque si lo es no hay mucho que hacer
Bueno va
De quien haya querido preferir qué OpenGL usar supongo xd, no de las dependencias
Esta la de ser el héroe y hacer todo de nuevo incluyendo el funcionamiento
Sigo sin entender de quién es la culpa
Bueno, si, porque no estoy haciendo lo mismo que hago internamente
Pero viendo que ya andas frustrado con esto, no creo que sea lo ideal
Es que no veo de quien seria la culpa
Supongo que los que portearon eso prefirieron el OpenGL normal, tal vez y es más completo que el ES
no hay ningun culpable, la switch deberia ser lo suficientemente potente como para que no se note la diferencia entre opengl es y opengl si lo usas de manera adecuada
opengl y opengles no tienen tanta diferencia de api, solo en el como esta construido
Pero es que tiene arquitectura de celular
No es un supuesto
es que
Es un suicidio en la batería usar una versión máximo rendimiento
Si yo de por si, en mi fangame sacrifico usando OpenGL pensando en compatibilidad
Y godot me la pone fácil
repito, no habria diferencia si lo usas de manera adecuada
es que no sé
Pero el chip es de Nvidia, la Switch es básicamente, es en teoría una Nvidia Shield
lo siento yapeao sinnsaber
Que usan también ARM
i wish i could understand spanish to figure out what you are all saying
we sre discussing about opengl
we are diving into deep rendering
Es que la cosa es que inclusive de placa Marilo y placa Erista hay diferencias de rendimiento no justificables
Switch normal 2017 mehh
2019 mejorcita
Lite mehhh
Oled va mejor en todos los casos
Yo tengo los 4 modelos
y en los 4 se nota la diferencia
suputamadre 😱
Pq en las placas de las Mariko usaron otro modo de diseñar el chip, y lo hacía más eficiente
Porque en la Lite sería meh si se supone que es también Mariko? Ni idea
Y de la Oled, tampoco tengo idea
Es también mariko
Desde 2019 es mariko
Y ambas funcionan diferente
Y repito e insisto
No tiene sentido
Pero a esa según que tenia otra versión más de la placa que permitia algo más de potencia
A mi solo me importa por la pantalla
por eso digo, por qué no usar OpenGL ES de base, sabiendo las limitaciones variables
Pero ando feliz con la V2
No realmente
como pasamos de hablar de manejo de datos en buffers a la arquitectura de la ds
x d
Tiene cambios y permitir más de 4gb de ram, pensada para 8 gb de ram y más overclock
Pero inssito
switch
No debería haber diferencia
tmr soy bien baboso
Ni idea
Ten en cuenta que a las finales en el desarrollo de juegos normales son usando la API propia de Nintendo que esta hecha para trabajar directo hacia la GPU
en teoría todas tienen las mismas especificaciones, solo lss mariko deberíann ir mejor
Y la oled
Pues tiene oled
Nintendo es raro, fin
Has visto unity en switch?
Y es oficial
Lo usan de manera oficial
Caídas de fps horribles
Realmente no, o no se
Links awakening no fue disfrutable a mi porque tenía que jugarlo con pausas
Porque primero
El shader horrible ese
Las caidas de frames
Lo tosco que se comportaban los menús en las primeras versiones
Que cagada que exista un mod para la Switch Lite para ponerle OLED pero no para la V2
Joda la Switch OLED es la más costosa de ponerle modchip https://cdn.discordapp.com/emojis/991944141472813196.gif?quality=lossless&name=Vappy_flop&size=96
Porque los data miners cuando descubrieron lss nuevas placas sd dieron cuenta de ambos modelos
Una version supuestamente pro (oled)
Y una versión barata (lite)
Entonces asumo que ambas placas son compatibles entre sí de alguna manera
O hay más interés en la Lite, ni idea
Yo estuve cerca de tener una Lite
Pero afortunadamente encontré la V2 al mismo precio que de una Lite xd
No, es que ambas se hicieron a la par
Probablemente sea limitación de software/ chipset
Pero no que la OLED salio bastante después de la Lite?
Que recuerde la OLED salio por allá del 2021, la Lite en 2019, siendo igual en 2019 la V2
Pero se filtsron ambas a la par po
Y la oled se retrasó porque ponerle más ram no le salia del todo bien
Bueh, si te das cuenta nos fuimos del tema
Acá no importa la versión de la Switch porque son básicamente la misma porquería bajo lo que estoy haciendo XDD
Se
Yo más tarde veré que hago con el juego y ahora las putas hold notes
Y.. Quitaré ese otro playfield para dejar descansar un poco la GPU
Trate de hacer esa lógica que dijo Theo o algo similar y solo me quedo las ganas de tirar la laptop contra la pared y volverla polvo y que me va a dar un derrame
Tons se queda como lo hice de por shader y valores y listo, aun que haya mejores maneras yo simplemente no se implementarlas en lo absoluto XD
Modcharts?? Or, well, one modchart xd
I need to implement HScript if I'm going to put modcharts in, I can't keep recompiling for changes like that... The problem is that the file still has to be on the Switch... I have to see if there's a background FTP module for the console
use nxscript :v
I'm not sure how to use nxscript, and... I prefer to play it safe and use HScript Iris
ok😔
not stable enough
i tried to use it for one of my projects and got precedence bugs
thought u could use hscript rewrite, but no oop
or lite
how you could handle modcharts with oop?
use lua 
could be an option too
but he would need to compile the c side of the library for switch
another good option
whiich is not that hard, i did it several times for hxlua
but for windows
lua and hscript +variationd
the jit is compatible with switch instructions?
sad 😔
got its own vm so yea
the sdk does all of the work
im making a scripting lang
but im still figuring out how to properly do it
so it can work well with oop natively
it wouldnt be reflection based, it will have its own std library, and for use it u will have to expose your api by yourself
so its faster
wdym
like? with native haxe classes?
oh
im still thinking on how to structure mines tho
you already have instances done? like, some basic classes made in haxe like a String class or Math
thats the first thing i did
i had
what happened
rn im rewriting everything
oh
im in the Parser stage rn
this might help if you get lost, although id recommend doing it thinking about how you want the language to work, this is a basic example of a language with its own logic
There's already a compiled library of Lua 5.1 for the Switch, but I don't feel like doing the bindings, and I think it not uses JIT, The Switch normally not.. Like that
nice
And instead of opening issues:
guer is mai rejister bi em
i needed scriptings asap so i switched to lua
srry 🙏
but iirc it was some ops being on the right rather that the left side
Ohh sorry
Yeha messed up by adding ().sqrt(2)
i mean semanticly wrong
i dont remember the operation i did but i remember it was doing it right handled when it should be left handled
yeah
i know
like
member == null and member.exists
should be
if member is null, everything is false so why eval the rest
How frustrating it is to try to make a modchart with only code and, on top of that, having a modchart system that is too basic and unstable, plus the unstable FTP connection between the console and the PC, and the console itself crashing easily.
bro a modcharting system is literally
basic linear algebra
note position vector -> modifier transformation phase -> output vector
tweens and everything else its a plus
The main problem is how I make the modchart itself. I know what I have is basic, but it's enough for what I need.
What I can't stand is having to do that in code and having to restart the game for every change
well i mean scripting in console platfotms makes no sense
what is algebra 
true
linear algebra, simplified its just vectors and matrix transformations
it has a lot of things behind but
its basicly that
And... Also, I haven't made a modchart in about a year. The last one I made was for C18H27NO3 in Slushi Engine, using the modchart editor from modcharting tools... I almost never use scripts to make modcharts with that tool
u can make ur own
as i said its not hard yk
oh
nice
Do you think I know how to do that? Honestly, no
I even thought about using MT's own editor, since the exported file is JSON and I can easily interpret it in OffBeat, but even so, it's more work than I really want to do
I'm better off looking for something else to do in the engine that... might be more stable and leaving OffBeat aside.
The question is, what do I do? Do I make a trailer in the engine itself? Idk
tbh u should do ur own
learn bro
emulating mt its harder than making your own
notePos = vec3(x,y,z)
func modify(vec):
if drunk != 0.:
vec.x += .... * drunk;
newPos = modify(notePos)
note.setPosition(newPos)
thats it.
obviouslr mt like modular modifiers got its way to work but tbh its inneficient and hard to maintain
nice pseudocode
im pretty sure if FunkinModchart got inlined that kind of code would be the output
fm its the same shit but a bit modular so u can sort modifier precedence
I'm just referring to the editor to make modchart easier and more convenient.
That's the problem I have, and the lack of time itself doesn't help.
I just want to have something to put on YouTube.
ive made other ones, 4 example a python engine were making for Lettuce floor v2 and other for my own engine in Heaps for 17Undertoaderos
it uses that
a transform function
so its fast as fuck
ngl i never liked editors
Because basically, I have everything else ready to launch the project to the public
For me personally, it's been the opposite hwh
https://streamable.com/xohsna
this is python, the modcharting module doesnt exceed the 600 lines of code
exec....Mods its just a if sequence
if (mod != 0) pos.... * mod
Bueh igualmente el problema del sistema de modcharts qué tengo es que lo he estado haciendo medio a lo speed run, no con calma alguna
Y básicamente prefiero es descatarlo junto a OffBeat para lo que quería
Y centrarme en algo que pueda hacer con calma y que sirva
Total OffBeat no lo pienso lanzar aún, pero quiero tener algo para anunciar en YT xD, no hacer como Leafy Engine qué solo lo anuncie en este server
tomorrow.
gihuv
mm
doitnow
After so many months and stress, I can finally release this project to the public: Vupx Engine, my engine for the Nintendo Switch built on Haxe, OpenGL 4.3, and SDL2!
And the best way I can show off the engine is with my game OffBeat. All the gameplay you saw is from a game running on a Nintendo Switch!
The gameplay song is:
https://www.youtub...
It's nice and all technically speaking, but you should be careful: Nintendo lawyers are no joke
I have made it clear that it is for homebrew purposes, since basically everything is made with things found in the homebrew community for the console
That's not something I like to think about; I just prefer to enjoy doing the project and achieving what I want
That's up to you 👍 . These are definitely gray areas and it can be a slipery slope, but I understand it can be fun to do
I guess Nintendo won't bother you as long as you don't try to make money out of any of this, but better be cautious about what you are doing and sharing online about it
I've known that I can't make money from it since I made the Leafy Engine project public, the engine for the Wii U.
But anyway, what matters to me first and foremost is enjoying myself and gaining some knowledge through these projects
Let's just see what happens in the future heh https://cdn.discordapp.com/emojis/1224557848059580466.gif?quality=lossless&name=Eevee_Chipi&size=96
With this, I can officially say that I fulfilled the whim I had that initially made me want to get a Wii U.
Although, well, Leafy Engine wasn't even close to handling what I show in that video
https://cdn.discordapp.com/emojis/1235672310770565150.gif?quality=lossless&name=LeafBop&size=96
switch 1 - wiiu 0
Merry Christmas heh
merry christmas too
This is just a proof of concept to try something else with Vupx Engine, my framework engine for Nintendo Switch. Nothing serious at the moment.
Check out the engine:
https://slushi-github.github.io/Vupx-Engine/
When I continue with Vupx Engine, I will most likely make another post specifically for that project heh
Sockets and HTTP/HTTPS requests are finally working on the Nintendo Switch target!
🔥
para eso era
Realmente no, era algo que tenia pendiente desde el inicio del proyecto, pero lo fui dejando de lado hasta hoy
Lo de esa librería fue una joda qué vino hace unas semanas pero no la hice porque no tenía soporte para esas cosas por culpa del mismo hxcpp
Hasta hoy que... Recordé esa joda y, la verdad no tenía mejor forma de probar como iba xD


That stupid line of socketExit(); prevents Atmosphere from crashing completely, instead triggering Nintendo's crash handler.
Progress perhaps for... Vupx Engine, but I still can't figure out why the program crashes when exiting
how are you closing the gmae
Closing everything and running the GC about 5 times, that's in Vupx Engine.
But the crash occurs in projects as simple as a hello world where nothing from the Switch is initialized, just, well, the Haxe stuff itself
NAH ESO NO TIENE SENTIDO, SIQUIERA LO HE IMPLEMENTADO-
Esas direcciones de memoria las ando sacando a lo medio random o a ciegas, no entiendo bien los logs de crasheos de la Switch
intenta usando exitConsole en finalizeEngine?
no veo que lo uses, y segun devkitswitchpro dice que esa funcion limpia todo lo inservible
puede que ahi este el problema
Exitconsole es para cuando uso la consola de texto, esa no la puedo usar si he iniciado OpenGL..
Sin eso si, crashea el programa pero.. Pues no estoy usandolo
Igual, probaré
Es que de hecho si lo uso pero si tratas de iniciar el engine en el modo Applet, cosa que yo al final vuelvo a cerrar pero pos, igual crashea
Se, incluso si es un simple proyecto que hace un trace("hello world");
El peo esta en Hxcpp, donde? Ni puta idea
Si me paso a un hxcpp más nuevo, el programa crashea inmediatamente, acá por lo menos es al salir
daamn
E igualmente portear lo que ya hice en mi fork a una versión más nueva de hxcpp es.. Ahm, me da pereza xD
holy
Lo peor es que sucedío.. Poco después del inicio del proyecto
Y estoy seguro que el GC tiene algo que ver en esto
Pero y yo cuando he querido tocar Immix xD?
He tocado mayormente la parte de std
Osea donde esta Sys, Socket, File, esas cosas
Pero no más, aparte de si alguna liberia aparte de las que se encarga de los sockets
Pero Immix que es el GC de hxcpp.. Jamás lo he tocado
Hay algo de Linux de alli que no le gusta a la Switch
el gc de hxcpp apesta
Actualizar Atmosphere no soluciona el problema
No se si actualizar HorizonOS porque no quiero y después no puedo hacer downgrade
(y digo Linux porque la mayoría del target se aguanta sobre el soporte de ARM64 de Linux de hxcpp xd)
weno, sera vivir con crashes
Se
Igualmente la Switch se reinicia rápido y eso
Pero es que es normal que un programa homebrew te deje regresar al menú de homebrew xd
O usarlo desde el modo Applet
Que estoy seguro que mi engine es lo suficientemente bueno para aguantar sobre 300 MB de RAM y en si poca cantidad de recursos
Pero un crash y se lleva todo.. Sin ese modo, pues sale el crash handler de Nintendo
De allí a que yo lo haya bloqueado en el engine
Se puede hacer bypass pero, nah
Tons, si, me rindo, que se queden los crasheos y ya, que se jodan

Aun queda pendiente el peo con Lime
Este comentario me emputo XDD, si fuese fácil obvio me encantaría usar HaxeFlixel en vez de haber hecho un engine propio
kill that guy
Another attempt...
...
Okay. I'll take that as progress.
no OpenGL, no CURL, no EFSW, but I was able to get something
@rough lichen @blissful otter @lavish roost
I torture myself and change several things, tricking the code just so it compiles
I have no idea if it works, especially without OpenGL
worried
im going to try the engine
where is the download
where to down load
!!
I really don't know if it works, but I'm happy to have created this.
WHERE TO DOWNLOAD
which engine?
id ont know
whatever is more stable
to do sometghing
like
under tale
or basic rpg movement
The only engine you can still use on the Switch with Haxe is Vupx Engine
https://slushi-github.github.io/Vupx-Engine
A framework engine for creating games for the Nintendo Switch with Haxe!
I don't think that Lime will work yet, and I'm not going to do anything with other libraries until I get the OpenGL part to compile.
hmm
@blissful otter wanna colaborate to slushi to make work lime on hb-switch?
i have a switch
well i have the 4 models of switch, old, 1.1, lite and oled
pacman :v
The problem with OpenGL and much of Lime is their foolishness in wanting to use cffi for everything, something that my hxcpp doesn't have fully implemented for the Switch, and normally the Switch doesn't like things like FFI either
it is fuckling funny since i already have arch linxu and im installing libnx devkit on windows
XDD
hmm
what about to make static methods instead of dynamic ones
@analog oasis para usar el newrepo lo hago desde el msys o con terminal normal?
ag
pregunta estupida
That's what I have in mind,
although I'm surprised that Lime doesn't already do it when there are things like “static_link.
donde prefieras XD, de eso se encarga haxelib
worried
hmmm yeah why not
con HaxeNXCompiler probablemente si mejor una terminal normal
!!
wenorp
no hay version en espanol 0/1o0
bueno perate a que pueda subir los putos cambios XD
okok
worried
nah alli no quise hacer eso XD
import switchlib.services.Applet;
public static function isRunningAsApplet():Bool {
return Applet.appletGetAppletType() != AppletType.AppletType_Application && Applet.appletGetAppletType() != AppletType.AppletType_SystemApplication;
}
But Vupx Engine already does that for you; it simply won't let you start in that mode
:3
ahm, ya eso yo no lo pongo ni lo pone el compilador XD, como es tu xml?
<?xml version="1.0" encoding="utf-8"?>
<project>
<!-- ========================================== -->
<!-- HAXE CONFIGURATION (Required) -->
<!-- ========================================== -->
<!-- Source directory -->
<source path="source" />
<!-- Main class entry point -->
<haxemain name="source.Main" />
<!-- Error reporting style: pretty, indent, or classic -->
<haxeerrorreportingstyle type="pretty" />
<!-- C++ output directory -->
<cppoutput path="output" />
<!-- Haxe debug mode -->
<haxedebug value="false"/>
<!-- ========================================== -->
<!-- NINTENDO SWITCH CONFIGURATION (Required) -->
<!-- ========================================== -->
<!-- Project name and console IP for deployment -->
<switchproject name="ProjectExample" consoleip="0.0.0.0"/>
<!-- Application metadata for Nintendo Switch -->
<switchmeta apptitle="Vupx Engine project example" appversion="1.0.0" appauthor="Slushi" />
<!-- ========================================== -->
<!-- BUILD CONFIGURATION -->
<!-- ========================================== -->
<!-- Number of parallel jobs for make (1-16) -->
<makefilejobs value="2" />
<!-- Send to Switch after successful compilation -->
<sendaftercompile value="false"/>
<!-- Delete temporary files after compilation -->
<deletetemporalfiles value="true"/>
<!-- ========================================== -->
<!-- HAXE LIBRARIES -->
<!-- ========================================== -->
<haxelib name="vupxengine"/>
</project>
definitivamente no entendiste el punto de que es un xml de ejemplo
worried
everyone hates me
archmomento
windows no? debes cambiar en las variables de entorno las rutas de devkitpro y asi
por defecto por alguna razon te ponen las de Linux
ohno
las rutas, busca donde instalaste DevKitPro y cambialas alli
asumo que es esto
sip
por qué ponen las d e Linux
ni idea
perra madre
te siguen faltando cosas XD
PERO ME INSTALE LO QUE DECIA
ya hazlo en Linux, es mas facil
💔
pinchemadre
igual no ando siguiendo la guia
ando haciendo pura intuicion
😟
mas al ratop le intento
por que no hay algo mas como el exe de windows
listo
me tuve que sacar de encima los estupidos submodulos del repositorio, me estaban causando dolores de cabeza
https://github.com/Slushi-Github/lime-nx
bueno, esto es un logro XD, pero me falta cambiar que muchas librerias que estan alli, usen directamente solo los headers de devkitpro y no su propia build que lo hace lime
hello
Mm, that change isn't necessary, or rather, it's not a problem if the links continue to send to the OpenFL links.
For now, it's still almost the same Lime.
What I'm wondering is whether it's worth basing my fork on a Lime from September 2025, or whether I should try a more recent one.
I honestly don't know. Except for some recent changes regarding externs, my hxcpp fork is still multiplatform without any problems, but Lime... I don't know, I don't know if it's bad to stick with an old version, I don't know what's new in Lime that my version doesn't have.
Anyway, updating all of Lime and getting that library agian is kind of... screwing myself over, so better not
idk if recent versions of openfl uses the most recent limes features
Well, it seems it was as easy as removing a block from OpenGLBindings.cpp that was like dlopen(“libGL.so.1”, RTLD_NOW | RTLD_GLOBAL); when compiling to Switch, and that was it, no errors.
I wonder what... I do now?
As far as I understand, OpenFL also had changes for the Switch, but, well, I don't know, I have no idea how Lime's SDKs work for consoles XD
I have to modify HaxeNXCompiler to include a new library that doesn't come from DevKitPro... and... I'm afraid to try something with this thing
Well, no way, let's move on to the next step...
i think lime handles most of the backend stuff
Anyway, I need to... Set aside HaxeNXCompiler, since it's not designed in the slightest to work with the Lime structure, only normal Haxe projects.
I'm going to try to compile an OpenFL hello world project, and if I succeed, then I'll do the manual linking process to get the executable for the Switch.
Logically, I should let Lime do the HaxeNXCompiler process, the linking process, but it doesn't matter for now
✅
Well, after some changes in SwitchPlatform, I was able to run a lime test switch, and it's quite random for me to see that it does something and doesn't say that I'm missing the "lime-switch" library
wait wha
Well, finally, there it is, libApplicationMain.a, the almost final file.
I'm still not ready to claim victory, though. Everything could fall apart during the linking process, and I have no idea about the files, i.e., whether OpenFL will find that font it wants and all that. I don't know anything yet, but having that libApplicationMain.a there is pretty good heh
And finally,
I have no idea how I made so much progress today compared to previous times. Today I did it to try, but I wasn't expecting anything. I expected to get to the same point as always, but this time, even if it fails in the linking process, it's just interesting, and I don't even have the same level of fatigue that I had several times with Vupx Engine
wa..
What the hell does that mean? I gave him his fucking liblime.a. In theory, it's the same shit as lime.ndll no..?
Could it be that Lime still wants to load the stupid .ndll?
Yes, that's what it wants, but... a static compilation should prevent this, it seems I'm misunderstanding something
Ask on lime ..1
I have no choice...
This is what I'm facing:
It turns out that Lime generates a small main.cpp
that seems to load what previously gave me those errors, but, uh, the library itself doesn't have... those functions, so it can't find them?
/opt/devkitpro/devkitA64/lib/gcc/aarch64-none-elf/15.2.0/../../../../aarch64-none-elf/bin/ld: Main.o: in function `main':
/home/slushi/Proyectos/LimeSwitch/bin/switch/obj/Main.cpp:25:(.text.startup.main+0xc): undefined reference to `zlib_register_prims'
/opt/devkitpro/devkitA64/lib/gcc/aarch64-none-elf/15.2.0/../../../../aarch64-none-elf/bin/ld: /home/slushi/Proyectos/LimeSwitch/bin/switch/obj/Main.cpp:26:(.text.startup.main+0x10): undefined reference to `lime_cairo_register_prims'
/opt/devkitpro/devkitA64/lib/gcc/aarch64-none-elf/15.2.0/../../../../aarch64-none-elf/bin/ld: /home/slushi/Proyectos/LimeSwitch/bin/switch/obj/Main.cpp:27:(.text.startup.main+0x14): undefined reference to `lime_openal_register_prims'
/opt/devkitpro/devkitA64/lib/gcc/aarch64-none-elf/15.2.0/../../../../aarch64-none-elf/bin/ld: /home/slushi/Proyectos/LimeSwitch/bin/switch/obj/Main.cpp:29:(.text.startup.main+0x18): undefined reference to `lime_register_prims'
collect2: error: ld returned 1 exit status
damn, cairo in the nintendo switch
Well, I asked the question on the OpenFL server, so let's wait and see what comes of it..
nice
At least when the program crashes, it doesn't cause Atmosphere to crash as well; it just brings up Nintendo's crash handler
🙏
Well, I was officially able to launch Lime on the Nintendo Switch, although It tried to use Cairo to launch the window and it crashed XDD
This is the first time these Atmosphere logs have provided me with truly useful information
Random thing, as far as I know, it seems that the same dependencies Lime uses to compile Switch are the same as those used by Vupx Engine xD. Of course, Lime uses more things, but in terms of libraries, if you have what you need to compile Vupx Engine, you will automatically have what you need for Lime
theres cairo for the switch?
Idk
From what I can see, Lime will use Cairo when it does not have access to hardware acceleration, but why would it not have it? The terminal does not print anything about something like that
cairo is something diferent
its like opengl - vulkan
but for two d
Mmmmmmmmmm
MMMMMMM
It is trying to load this...
Okay, I'll definitely leave it there for today, I'm already starting to burn out mentally https://cdn.discordapp.com/emojis/1036754016283140209.png?quality=lossless&name=EB_LeafeonScared&size=96
I think the only issue I have is with OpenAL Soft, which doesn't compile if it's a static link, and... Well, for now it's disabled
theres an document that talks about openal in the switch
it talks about openal in the devkitswitchpro
Waa y en español? Que raro pero interesante xD, bueno lo tendré en cuenta
El tema que vi es que falla al inializar OpenAL, pero cuando lo probé fue.. No se, creo que fue sin el soft, por lo que tal vez eso haya causado los crasheos

tararoesoah
Todo eso es de prueba y error y seguirá siendo así antes de tener algo primero, funcional xd
Recompilar Lime
Recompilar el proyecto
Hacer proceso de link
Pasarlo a la consola, ver que crashea
Ver el archivo de log y pasarlo por addr2line, averiguar
Y así repetir el ciclo
el dolor que los desarrolladores de otros sistemas viven a diario
son los reales ''no tengo boca y debo gritar''
Bueno, esto pasa cuando básicamente estas experimentando xD
Supongo que la vía fácil es acceder al Nintendo Developer Portal y pedir el Lime y eso
Pero, nah nah, no quiero el puto Nintendo NDA
(nunca me van a dejar entrar a ese programa después de este proyecto https://cdn.discordapp.com/emojis/991944141472813196.gif?quality=lossless&name=Vappy_flop&size=96 )
decadencia o ascendencia
Idk, depende de lo que quiera en el futuro xd
Okay... OpenFL insists on using Cairo, the error comes from BitmapData... Although, well, the crash is on Lime's side, so how do I deal with OpenGL? In which case does OpenFL or Lime use it? Because all the code leads me to something in Cairo, the Haxe code and the hxcpp C++ compilation code.
But, literally, there's supposed to be no code related to compiling Cairo in the Lime library when compiling to Switch.
I have no idea if Cairo works on a Switch, probably yes, but maybe it's under confidential issues...
why openfl would be using cairo?
oh, the graphics function
class*
that has sense
I think some part of Lime is reporting that it use software... Therefore, it will use Cairo
Or, my other worse suspicion is that I see a lot of #if lime_cffi that are related to OpenGL... And... Obviously, it didn't compile with that.
damn
If I can't force OpenGL, I'm in a bit of a strange situation, because I don't know anything about Cairo. The functions I see don't reach Cairo libraries or anything, just Lime functions that mention things about Cairo (plus, in theory, liblime.a doesn't have anything from Cairo, so it's not like I can do that... Should I let it compile Cairo?)
Later I'll try to see what happens if I compile Cairo under that target. I'm sure something will go wrong because it's not ready for Switch or anything like that.
But basically, it crashes when trying to create the graphics
no se si cairo funcione en la switch
porque cairo usa backends dependiendo del sistema como win32 x11 etc
y supongo que ademas de el software, openfl usara cairo para todo lo referente a graficos vectoriales
que sepa, graphics funciona en base a graficos vectoriales
o quizas estoy mal
pero no se si la switch y su sistema operativo tenga uno de los backends que cairo usa
Yo creo que directamente no
Pq, bueno, no es un sistema normal.. Tons no se
No tengo errores específicos
Solo se que el programa esta tratando de acceder a puntos de la memoria inválidos
Al rato como dije probaré en dejar que compile Cairo, solo a ver que resulta si en primer lugar deja compilar la librería, pq dudo que encuentre lo que necesita
Openal no compila porque se queda buscando cosas de Linux como PulseAudio, o si no tira a CFFI cosa que en la Switch no funciona
Tons.. Idk, estoy perdido xD, no creo que acá los de Lime puedan ya ayudarme
el dolor que ocultan los desarrolladores de otros sistemas
😔
ahora imagina desarrollar homebrew para la ps3

Te digo algo? Por culpa de una PS3 es que ando con todos estos proyectos xD
Yo había conseguido una PS3 a la que me intereso ponerle homebrew pero la consola estaba dañada y luego se terminó de dañar completamente
suele pasar (me paso)
Mi 3DS esta rota y no es muy.. Buena idea usarla
De allí me agarre la Wii U cuando la conseguí y de última la Switch
Pero si no hubiese sido por la PS3 dudo que estuviera con estos proyectos
Allí pregunte, no pierdo nada en intentarlo supongo..
Pero si Lime sigue forzado a querer usar Cairo, no tengo chance xD
Oh no.
Necesito Cairo si o si?? No me jodas-

For a reason, the first thing I did when I started modifying Lime months ago was to prevent Cairo from compiling. It was obvious that it wasn't going to compile, or at least not easily, under this stupid target.
Well, a version of the library with the Cairo compilation.
se XD
love2d es clave
damn, usar cairo para las imagenes es duro
no era tan dificil usar stb_image / sdl_image
se, pero bueno, alguna razon debia haber cuando se creo OpenFL o algo asi xd
decadencia
ASCENDENCIA
@rough lichen @lavish roost
Se logró, OpenFL y Lime en Nintendo Switch
Ahora flixel
lo dijo ella yo no
Calma, primero debería dejar de hacer manual los procesos de copiar la librería y assets y todo
@ninjamuffin te toca w :v
Debo hacer una pequeña versión de HaxeNXCompiler dentro de Lime
dayum
wait
si love2d hay en la wii
fnf en la wii es real
este dia estuvo lleno de noticias ascendentes
No puede ser que logre en 3 días lo que no logre hace meses ._.xD
Ah pero claro... No hay audio, no hay OpenAL
Queda esa cosa pendiente creo
Y todo bajo cosas de homebrew
Y a ciegas de como debia ser en esa cosa de lime-switch y lime-console
Claro que sigo sin saber si esta corriendo sobre únicamente Cairo o parcialmente OpenGL, no se comprobar eso
Pero saben que haré primero? Irme a descansar porque de la emoción me dará algo xD, mejor lo dejo hasta acá por ahora o por hoy
nice
is this lime finally not shitting itself?
openfl i think
both
which means lime didnt shit itself :3
when is flixel switch port comin
Even so, I think HaxeFlixel will have to wait. I don't know why, but I feel like it will cause me problems.
But I certainly don't know how to use pure OpenFL either. I'll have to look at the other examples in the OpenFL samples library
At the rate I'm going, I'll probably start testing HaxeFlixel within this week.

Until I run this demo, I won't declare this project completely finished.
https://haxeflixel.com/demos/Mode/
HaxeFlixel is a 2D Game Engine that lets you create cross-platform games easier with free, open source technology!
And why Mode? Because of this.
https://www.youtube.com/watch?v=qWDq7XIy24o
As seen at #WWX2015. Written in Haxe/OpenFL and running natively on a WiiU via the C++ target! Note this is running in debug mode, and also the slowdown you see after a spawner explodes is actually intentionally programmed into the demo, not a performance issue.
damn i remember that video
im still wondering, what is using openfl for rendering in the wiiu
me and another guy were seaching how to compile lime to the wiiu like 3 years ago
Here it was explained, I think.
https://www.fortressofdoors.com/openfl-for-home-game-consoles
uh, so I'm not the first one to try that
i remember that post too
yep
Even though I never managed to get hxcpp working, looking at everything it seems that I had no chance of getting Lime to work on a Wii U, due to the nature of the console.
Another point in favor of the Switch over the Wii U in my Haxe projects on consoles xd
the people who managed to run lime on the wii u are engineers with years or decades of experience, thats why i gave up trying to compile it
Maybe if I could get hxcpp to work on Wii U, but is it worth it? I can't see any significant benefits apart from greater stability and not having to reimplement everything that Haxe has, but I still wouldn't have OpenGL, so I'd have to stick with SDL2.
nintendo should make free the wiiu sdk :v
Yeah, that makes a lot of sense.
It's impossible for Nintendo to do something like that XD.
But remember that for hxcpp on the Wii U, they used something other than just Nintendo's SDK.
Nintendo's logic is:
homebrew = piracy
Even if you only make your own creations and stuff, to them it's piracy.
wfEngine? ive never found the project, i think its private
there is no legal basis btw
Uh, esta pantalla nunca me salio con homebrew mio
que raro
Algo de más lógica hay de Switch en Lime o algo asi porque nunca lo vi Con Vupx Engine
parece que lime tiene algo de conexion con switch en su codigo
Probablemente algo en relación a los controles o algo así
que raro
do i need linux to compile this
para compilar a la switch usando lime (de manera oficial) necesitas el sdk, no tendria sentido que dejen algo de ese codigo desparramado en los servicios del input
Osea conozco la pantalla esa, me pide que conecte mando, pero con Vupx Engine pues, no salia eso, le valía verga a la Switch si había un solo joycon o los dos
Se, en teoría ni deberían poder
Hmm, I'm not sure.
I don't think so, because I see that everything is compiled with DevKitPro stuff that is also available for Windows, and the libraries are basically the same as those in Vupx Engine.
But I think it would be better to do it on Linux, but as I said, I dont know
Exacto XD
algun dia me dare una vuelta por el codigo de lime de nuevo para ver que fue
El de mi fork por el momento es medio un desastre
Pero bueno fue de prueba y error prueba y error prueba y error
Ahora necesito ordenar todo y documentar un poco mis cambios ... De los que recuerdo
nice
voy a preguntarle a papi gpt si podria ser algo con sdl:v
razonable
ahora me siento sucio por usar ia
Nah SDL no controla eso por defecto, menos en mi caso que ni siquiera inicio eso, yo no uso SDL para los controles en mis proyectos
Uso el SDK directo xd
increible
damn, que yo sepa los inputs de lime usan los inputs de sdl
Se, allí si
Tons... No se realmente que hace que eso haya aparecido
Pero hey, mejor xD
una carta anonima a las oficinas de nintendo japon con un texto diciendo fuck you y un usb con el video :v
Debería aparecer por defecto en juegos y eso y, ya básicamente ya esta implementado, yo ni se como se hace para aparecer eso
Aunque eso si que el SDL usado en Lime es el de para la Switch directo de DevKitPro, no el de Lime propio
respuesta corta: un mago lo hizo
Mañana me llega un correo de Cese y desista-
un abogado te toca la puerta
Nah no estoy haciendo nada en contra de Nintendo ni usando nada de ellos xD
"porque al ejecutar homebrew se llama una funcion del sistema de la switch?"
"no se, lime lo hace automaticamente"
hechale la culpa a lime :v
A menos que los de libnx la hayan cagado como hicieron los de libogc
Pero mientras no, todo perfecto todo bonito
A disfrutar xD
Bueno aun no hasta que perfeccione el tema de compilación
Necesito automatizar eso
yo y los que usamos codigo con derechos de autor
Eh, yo admito que use bastante IA en esto de Lime
Pero mayormente como de tipo automatización o algo así, para obtener los códigos de los crasheos de los logs de Atmosphere y modificar el Build.xml de Lime
De resto no es como la IA tampoco pudiera ayudarme tanto xD
no se, no creo que sea algo malo en usar ia como ayuda al modificar un proyecto hecho por profesionales - estudiados en programacion
yo solo la uso para automatizar procesos repetitivos
y buscar informacion que no encuentro
pero igual siento feo