Homebrew Homebrew Development

ShroomKing

Somebody
Member
Joined
Mar 3, 2017
Messages
470
Trophies
0
Age
29
Location
in bed
XP
1,965
Country
United States
WOW THANK YOU SO MUCH!!!:yay: this is great I was going to get into opengl but the installation was vague and the guide I followed had me download about five different programs THANKS AGAIN THIS IS GREAT!!!:yay: I also have code blocks it is a great IDE
Sorry by "use code blocks" i meant: use code formatting blocks in your messages, it makes it easier to read the code and people reading the thread don't have to scroll as much.
(CODE)
//your code
(/CODE)
like this but with [ ] instead of ( ).

It really doesn't matter what editor/IDE you use, as long as you're comfortable with it.
I personally use vscode with the Microsoft C/C++ addon, it's very helpful and also easy to configure for "homebrew" development.
 
Last edited by ShroomKing,
D

Deleted User

Guest
Sorry by "use code blocks" i meant: use code formatting blocks in your messages, it makes it easier to read the code and people reading the thread don't have to scroll as much.
(CODE)
//your code
(/CODE)
like this but with [ ] instead of ( ).

It really doesn't matter what editor/IDE you use, as long as you're comfortable with it.
I personally use vscode with the Microsoft C/C++ addon, it's very helpful and also easy to configure for "homebrew" development.

Okay cool sorry for the mix upB-)
 
D

Deleted User

Guest
Sorry by "use code blocks" i meant: use code formatting blocks in your messages, it makes it easier to read the code and people reading the thread don't have to scroll as much.
(CODE)
//your code
(/CODE)
like this but with [ ] instead of ( ).

It really doesn't matter what editor/IDE you use, as long as you're comfortable with it.
I personally use vscode with the Microsoft C/C++ addon, it's very helpful and also easy to configure for "homebrew" development.

Sorry to bother you again but I was wondering say I wanted to make a sprite move should I make a t3s file for each frame or should I put all the frames in a single t3s file thanks
 

AHB

Active Member
Newcomer
Joined
Mar 9, 2016
Messages
40
Trophies
0
Age
34
XP
436
Country
United States
If I'm using citro3D and/or libctru, is it possible to change the format of a render target's frame buffer mid-program, or would I need to delete the render target and recreate it with the desired frame buffer format? If it is possible, what specifically would I need to do?
 

elhobbs

Well-Known Member
Member
Joined
Jul 28, 2008
Messages
1,044
Trophies
1
XP
3,032
Country
United States
Sorry to bother you again but I was wondering say I wanted to make a sprite move should I make a t3s file for each frame or should I put all the frames in a single t3s file thanks
It depends. It will likely depend on the size of you sprites and how much memory you have available. Large sprites may require their own texture. Lots of smaller sprites can be packed into a single texture. If the sprites are of a uniform size you may be able to use a simple grid aligned allocation. If they are not uniform in size and you are running low on memory then you may need to get a little more aggressive and use a texture atlas.
The simplest approach is probably a single texture for each sprite. I would go with the simplest approach until you know you need to do something different.
 
D

Deleted User

Guest
It depends. It will likely depend on the size of you sprites and how much memory you have available. Large sprites may require their own texture. Lots of smaller sprites can be packed into a single texture. If the sprites are of a uniform size you may be able to use a simple grid aligned allocation. If they are not uniform in size and you are running low on memory then you may need to get a little more aggressive and use a texture atlas.
The simplest approach is probably a single texture for each sprite. I would go with the simplest approach until you know you need to do something different.

Okay thanks I have figured out a way to animate the sprites but they now move faster then the eye can see I am trying to add a 0.5 second intermission between frames
 

catlover007

Developer
Developer
Joined
Oct 23, 2015
Messages
721
Trophies
1
XP
3,925
Country
Germany
Okay thanks I have figured out a way to animate the sprites but they now move faster then the eye can see I am trying to add a 0.5 second intermission between frames
this method doesn't take account if the fps drop <60 but it's the simplest method. You have a frame counter, once it reaches thirty you move to the next frame and reset the counter.
 

catlover007

Developer
Developer
Joined
Oct 23, 2015
Messages
721
Trophies
1
XP
3,925
Country
Germany
Is there any way to control 3ds volume with code?
afaik that would be quite hard and would require modifications of the os itself.
Hey would anyone know how to install devkitPro on Linux? thanks
it's detailed here as for every other platform: https://devkitpro.org/wiki/Getting_Started

if you use a distro which uses pacman as it's default packet manager, you only need to add the appropriate package sources. Otherwise you need to install pacman.
 
D

Deleted User

Guest
afaik that would be quite hard and would require modifications of the os itself.

it's detailed here as for every other platform: https://devkitpro.org/wiki/Getting_Started

if you use a distro which uses pacman as it's default packet manager, you only need to add the appropriate package sources. Otherwise you need to install pacman.

Thank you

--------------------- MERGED ---------------------------

Would anyone know what 3d model software to use to create my own assets for 3ds homebrew
 

catlover007

Developer
Developer
Joined
Oct 23, 2015
Messages
721
Trophies
1
XP
3,925
Country
Germany
Would anyone know what 3d model software to use to create my own assets for 3ds homebrew
for 3d modeling in general blender is a good choice, it's free and open source and even rivals commercial programs, though it has a steep learning curve. Also you don't have an engine on the 3ds, so you probably have to write your own model loader/integrate one someone else has already written.
 
D

Deleted User

Guest
for 3d modeling in general blender is a good choice, it's free and open source and even rivals commercial programs, though it has a steep learning curve. Also you don't have an engine on the 3ds, so you probably have to write your own model loader/integrate one someone else has already written.

Okay thank you i will look into a model loader
 
D

Deleted User

Guest
Would anyone know how to attach a camera to a sprite and also add collisions thanks to anyone who fells like answering this
 

reycr88

Active Member
Newcomer
Joined
Dec 20, 2015
Messages
27
Trophies
0
Age
36
XP
142
Country
United States
im wondering if it's possible to upgrade the 3ds xl emmc?i i would love to try it on the wii u as well.if its its possible i would love to share my results.
 

Ender3Guy

Well-Known Member
Newcomer
Joined
Oct 17, 2019
Messages
52
Trophies
0
Age
28
XP
194
Country
Canada
I'm looking to start homebrew development for my N2DSXL with some C/C++ experience. I'm installing DevKit right away, but I'm wondering what 3d graphics library is easiest to use and where I can find documentation on it. I know 3DBrew is a good place to start but I haven't been able to find much information on graphics libraries there.

Thanks in advance.
 

catlover007

Developer
Developer
Joined
Oct 23, 2015
Messages
721
Trophies
1
XP
3,925
Country
Germany
I'm looking to start homebrew development for my N2DSXL with some C/C++ experience. I'm installing DevKit right away, but I'm wondering what 3d graphics library is easiest to use and where I can find documentation on it. I know 3DBrew is a good place to start but I haven't been able to find much information on graphics libraries there.

you don't have much choice for 3d graphics, than citro3d. Your main starting point would be the citro3d examples: https://github.com/devkitPro/3ds-examples/tree/master/graphics/gpu note that from a point of difficulty, citro3d abstracts away the lowest low level stuff, but it's still a bit more low level than opengl, but not as complex as vulkan, as the gpu is not that complex compared to desktop gpus.
Secondly 3dbrew is a terrible place to start if you're a beginner with 3ds homebrew. For those seeking information for implementing libraries to interface the 3ds hw/os (ctrulib/citro3d), very low level homebrew (cfw as an example) and emulator devs it is the place to go, but it's rarely relevant for homebrew developement unless you're interested in something very specific.
 
Last edited by catlover007,

TheGag96

Well-Known Member
Newcomer
Joined
Feb 1, 2016
Messages
45
Trophies
0
Age
27
XP
111
Country
United States
I've been making a homebrew game for a little while now using citro2d. Through making it, I've noticed that citro2d, at least through the way the gpusprites demo draws sprites, can only get around 350 sprites drawn to both screens (~700 total draws) before it starts to lag on o3DS. I know the console is more capable than that, but I cannot figure out how you're supposed to draw sprites efficiently with this library. With those sorts of numbers, there's no way you could draw tile-based graphics without collapsing groups of tiles into single textures or something, and even then, you'd still be pushing things.

Anyone know what to do? Put sprites drawing on another thread? Use C3D_FRAME_NONBLOCK as the param to C3D_FrameBegin instead of SYNCDRAW? I really don't know, and I've tried a few different things now. Thanks!
 

catlover007

Developer
Developer
Joined
Oct 23, 2015
Messages
721
Trophies
1
XP
3,925
Country
Germany
I've been making a homebrew game for a little while now using citro2d. Through making it, I've noticed that citro2d, at least through the way the gpusprites demo draws sprites, can only get around 350 sprites drawn to both screens (~700 total draws) before it starts to lag on o3DS. I know the console is more capable than that, but I cannot figure out how you're supposed to draw sprites efficiently with this library. With those sorts of numbers, there's no way you could draw tile-based graphics without collapsing groups of tiles into single textures or something, and even then, you'd still be pushing things.
the example contains some meters for profiling: https://github.com/devkitPro/3ds-examples/blob/master/graphics/gpu/gpusprites/source/main.c#L109
what do they say?

Anyone know what to do? Put sprites drawing on another thread? Use C3D_FRAME_NONBLOCK as the param to C3D_FrameBegin instead of SYNCDRAW? I really don't know, and I've tried a few different things now. Thanks!
the difference between syncdraw and nonblock is only that it'll wait until the GPU is finished/vsync has happened. So with nonblock you will just stop the GPU while it's still working, which is bad.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Xdqwerty @ Xdqwerty: @salazarcosplay, I heard herbert stopped appearing on the show