#Albuquerque "Engine" (Updates every Sunday)

2150 messages · Page 3 of 3 (latest)

split blade
#

i also just noticed

rose orchid
#

Arrow keys to move. W/S controls the speed. F restarts the scene. 1/2 Pauses and unpauses

split blade
#

you fetch tinygltf and cgltf is there too, or is that from my template?

rose orchid
#

but dont use it? yea

#

I wanted to clean up my fetchcontent and stuff as part of the refactor. I don't use googletest yet but it gets fetched 😔

#

cgltf is from the template, tinygltf is because a fwog example used it and I borrowed the scene loader from it

split blade
#

ah right, fwog uses tinygltf

#

i frogor

#

jaker wanted to switch to fastgltf eventually, and so want i in the template, mayhaps one day 🙂

#

somewhere in optional

  // XXX Does not belong here.
  [[__noreturn__]] inline void
  __throw_bad_optional_access()
  { _GLIBCXX_THROW_OR_ABORT(bad_optional_access()); }
      constexpr _Tp&
      value()&
      {
    if (this->_M_is_engaged())
      return this->_M_get();
    __throw_bad_optional_access();
      }
#
        propModel *= aircraft_body.rotMatrix;
        model *= aircraft_body.rotMatrix;

        ObjectUniforms a(model, glm::vec4(0.0f, 1.0f, 0.0f, 0.0f));
        objectBufferaircraft.value().SubData(a, 0); // crash here
rose orchid
#

So the way I fixed this showing up originally was there was missing assets (and I didn't throw an exception for it). This is caused by the buffer not being created as the Init was exited early (i should have thrown an exception)

split blade
#

why is that even an optional

#

and why is there no error handling for it if it fails

#

optionals have a default value i would assume whch would not work with .subData() once called either

#

its not like you would return a default bufferaircrat buffer of sorts 😛

rose orchid
#

The constructor sets it as TypedBuffer. It either has to be set in an initialization list or invoke constructor later thru std::optional

#

When I refactor I'd create a factory for these tho

split blade
#

ah

#

this kinda make no sense to me, but thats probabyl because i dont know c++

#

.value() constructs it when it can i suppose, but could fail if it cant

rose orchid
split blade
#

the typedbuffer thing does make sense, im questioning the .value() ism

rose orchid
#

but I didn't because prototyping (I will later on)

#

So when that failed to load, it outright exits Load() but there is nothing to go 'load failed, end the program and send the correct error message'

rose orchid
#

Anyways, try and pull again and make sure you're on the head of master (unless u have already). Maybe I'll make a Linux runner in the near future (although it can't catch runtime errors after the window is created unless I can find some 'GLFW headless' or something)

split blade
#

you said you committed to main

#

hence the earlier questions

rose orchid
#

I cloned a fresh repo from this and got it to work on my VM.

split blade
#

well

#

hehe

rose orchid
#

dw. tomorrow I'll make a Release that has a Linux executable that u can try out in a sandbox.

split blade
#
::RawImageData*, std::vector<Utility::(anonymous namespace)::RawImageData, std::allocator<Utility::(anonymous namespace)::RawImageData> > >, __gnu_cxx::__normal_iterator<Utility::(anonymous namespace)::RawImageData*, std::vector<Utility::(anonymous namespace)::RawImageData, std::allocator<Utility::(anonymous namespace)::RawImageData> > >)#1}>, tbb::detail::d1::auto_partitioner const>&, tbb::detail::d1::blocked_range<__gnu_cxx::__normal_iterator<Utility::(anonymous namespace)::RawImageData*, std::vector<Utility::(anonymous namespace)::RawImageData, std::allocator<Utility::(anonymous namespace)::RawImageData> > > > const&, unsigned char&, tbb::detail::d1::small_object_allocator&>(tbb::detail::d1::execution_data&, tbb::detail::d1::start_for<tbb::detail::d1::blocked_range<__gnu_cxx::__normal_iterator<Utility::(anonymous namespace)::RawImageData*, std::vector<Utility::(anonymous namespace)::RawImageData, std::allocator<Utility::(anonymous namespace)::RawImageData> > > >, __pstl::__tbb_backend::__parallel_for_body<__gnu_cxx::__normal_iterator<Utility::(anonymous namespace)::RawImageData*, std::vector<Utility::(anonymous namespace)::RawImageData, std::allocator<Utility::(anonymous namespace)::RawImageData> > >, __pstl::__internal::__parallel_or<__pstl::execution::v1::parallel_policy const&, __gnu_cxx::__normal_iterator<Utility::(anonymous namespace)::RawImageData*, std::vector<Utility::(anonymous namespace)::RawImageData, std::allocator<Utility::(anonymous namespace)::RawImageData> > >, __pstl::__internal::__pattern_any_of<__pstl::execution::v1::parallel_policy const&, __gnu_cxx::__normal_iterator<Utility::(anonymous namespace)::RawImageData*, std::vector<Utility::(anonymous namespace)::RawImageData, std::allocator<Utility::(anonymous namespace)::RawImageData> > >, std::_Not_fn<Utility::(anonymous namespace)::LoadImageDataParallel(std::vector<Utility::(anonymous namespace)::RawImageData, std::allocator<Utility::(anonymous namespace)::RawImageData> >&, std::vector<tinygltf::Image, std::allocator<tinygltf::Image> >&, tinygltf::LoadImageDataOption)::{lambda(Utility::(anonymous namespace)::RawImageData&)#1}>, std::integral_constant<bool, false> >(__pstl::execution::v1::parallel_policy const&, __gnu_cxx::__normal_iterator<Utility::(anonymous namespace)::RawImageData*, std::vector<Utility::(anonymous namespace)::RawImageData, std::allocator<Utility::(anonymous namespace)::RawImageData> > >, __gnu_cxx::__normal_iterator<Utility::(anonymous namespace)::RawImageData*, std::vector<Utility::(anonymous namespace)::RawImageData, std::allocator<Utility::(anonymous namespace)::RawImageData> > >, std::_Not_fn<Utility::(anonymous namespace)::LoadImageDataParallel(std::vector<Utility::(anonymous namespace)::RawImageData, std::allo
``` getting a kilometer long printout with that stuf when building here
#

just a warning

deft wolf
#

ah it's tbb schtuff

split blade
#

yeah

#

had to add tbb as a dep againto be linkered

#

but now it works

#

the app steals my cursor and holds it hostage

#

and i do be seeing some weird artifacts at the ottom

#

mayhaps i can unsteal the mouse and grab a screnshot

rose orchid
#

Press 1 (or 2?) to get it back

split blade
#

perchance make the mouse theft oggleable

#

ah

rose orchid
split blade
#

i dont think it could be that

#

no

#

looks like some sync issue of sorts

rose orchid
#

I can't recreate it at the moment. (My VM framerate is way too slow. I can't get it to show on Windows (but I do think its unrelated as this is 4.5 version))

split blade
#

and you dont use MDI from what i saw, unless im bleind

rose orchid
rose orchid
#

But no it seems unrelated. Not sure where to look though.

split blade
#

dont worry about it for now

#

let me check

rose orchid
#

Thanks for trying out the game tho and compiling it and stuff

#

:D

split blade
#

its cool stuff 🙂

#

you get more shit done than i ever have 😄

deft wolf
rose orchid
#

Yea! In terms of the cool game design and fun gameplay stuff I am gonna migrate it to a unity project though. Alberquerque will instead just become an NIH game engine for fun where small prototypes like the plane game are used to slowly feed it.

rose orchid
split blade
#

fwog-template doesnt have it, ie no artifacts

rose orchid
#

oh ok. I'll just remember about it and maybe I can see if you'd still find it after the rewrite/refactor stuff in a month or two.

#

Maybe I'll just be dual booting Linux by that time lol

#

I am feeling kinda good because I remembered when I first started I threw tamper tantrums over Cmake stuff @split blade... and now I pushed through to get my CMake file to be cross platform. Glad i didn't give up

split blade
#

the flying feels a bit wonky, but i wouldnt know how to make it more proper

#

perhaps add deltas rather than absolute values

rose orchid
#

Yea. A lot of it is also the camera too I think. The camera being so 'static' makes things feel pretty stiff

split blade
#

yeah

#

few slerps are missing here and there perchance

rose orchid
#

yea. I'd love to get more feedback on it and tweak it more in the Unity vesion of it.

#

@split blade :p

split blade
#

did i write that?

rose orchid
#

yea

split blade
#

lol

#

where?

rose orchid
#

Just tryin to imply that your Cmake Template might really be the birth of an actual engine over time

#

I do thank you for real. I started out with a fear of CMake and now I gotten a bit better at it. Might even replace as many FetchContents as i can with submodules instead lol

#

thanks man blobthumbsup

split blade
#

haha

#

i have 0 memories of that part

#

but im happy that 1 person liked it

rose orchid
#

now im going back to work. Have a good one @split blade :)

split blade
#

you too

rose orchid
#

@marsh cliff hope you don't mind the ping but its a followup to this: https://edw.is/using-cmake/#git-submodules
I have absolutely no idea how to use git submodules to only clone specific tags (I only figured out how to get it to clone the latest commit of specific branches)
<#questions message>

#

An option I can figure out would end up being the same thing as this but for every repo instead of some repos, because usually tags and releases are specific commits of a master branch:

rose orchid
#

(SOLVED)

marsh cliff
#

The solution is to do “git checkout” inside the submodule dir, yeah 😅

rose orchid
marsh cliff
rose orchid
#

Yea...

#

Unrelated:

I just realized as I haven't touched this project in awhile that I can actually put my software rasterizer prototype (Milwaukee https://github.com/ClementineAccount/Milwaukee) inside Alberquerque's codebase. Meaning I can have a software rasterizer generate textures for use inside my regular OpenGL/Fwog rendering. Decided to do this because I realized both projects may potentially share code and it can be a good refactoring exercise way into the future to decouple rendering in such a way I can use the same lighting class for both a software rasterizer and regular 3D GPU game

rose orchid
#

Albrequeruqe (Formally Plane Game (Fwog Flying Game))

#

yea they are in the same codebase now. I renamed the channel so its like Jaker's 'fwog & co.' where I can write about my other projects in the same codebase here

#

I'd probably make a separate thread for Plane Game Unity later

#

Albuquerque (Formally Plane Game (Fwog Flying Game))

#

yes i realize how messed up it is that this codebase impllies that Milwaukee inherits from Albuquerque... codenames after cities be like...

crimson wagon
rose orchid
#

I decoupled my camera from the renderer and some other stuff. Moved it up to Albuquerque library so now multiple projects can use the same code over time.

#

maybe its time to make Shoot Game

rose orchid
#

mayhaps id make a new thread once i read the first sprint milestone

#

then id keep this one for other stuff like software rasterization or skinned meshes CPU side or whatev

rose orchid
#

I gotta fix the capitalization of the actual titles to be more consistent

#

underline and color stuff... looks better I think?

#

not too into the super fancy react front-end bootstrapp aesthetic atm so im a fan of Elias's site as a reference

#

I prob should take inspiration from @glad kelp and put the date on the list itself tho since I'd end up having a lot

#

Thinking of even switching to Chirpy just like NotAPenguin and archiving the more minimalist style because Chirpy is a bit more 'modern looking' and comes with categories and sidebars for free which can add a more professional look

#

big appeal is this Contents

deft wolf
#

yeah making the table of contents in raw html is the worst thing about it tbh

rose orchid
#

I like it but I realize my taste for mid 2000s look isn't very mainstream so for a portfolio thing as a freshgrad/junior I should follow the more modern Chirpy look as that as more universal appeal

#

once I go senior though I'd vomit my brutalist html site layout no shame needed

split blade
#

our learnd3d11 also has sidebars

#

but when looking at it, material is starting to annoy me XD

marsh cliff
rose orchid
#

I have been playing around with the same layout Penguin uses and I am a fan of it.

#

I like that andriodarts site

#

Maybe id just have a secret personal brutalist html site and use this modern style for portfolio stuff

rose orchid
#

this is kinda fun (and yea I know nobody will really read it and it doesn't really need that much effort but its fun to write so eh)

#

Once I move over my posts I can replace the old site w/ this layout which I like better.

rose orchid
#

Im going to be less active online... will atill uodate the site

#

I ported over tons of Plane Game to Unity then my laptop got kill

rose orchid
#

Not gonna be active on this server but both albuquerque and plame game live on for any xurious witnesses

rose orchid
#

Every sunday maybe I'd post a weekly update here but not all of them may involve Alberquerque or Plane Game. But I have some sprint board for PLane Game and like trying out a 'work on Alberquerque every Monday, Wednesday and Friday' thing so we'll see how it goes

#

I want to thank you all for the help and support along the way though. I still have a lot of learning to do but I want to focus on my foundations in a more quiet and less distracted way through textbooks and self-study rather than on social media. I got a ton of new books on a giveaway at my university's library (you got red book and superbible ofc and a lot of the compsci classics including Dragon Book)

This was one of the nicher oddballs. its older and win32 api but its not a bad place to get confidence for making my own NIH engines. Its a bit of a beginner's book but I never really done a full engine from scratch 100% myself (I worked on one in a team before but I just lived in the renderer side and smetimes come out to the editor). Plus it has 90s energy so thats cool

#

i tend to write down some of my questions in a notebook and use like Sunday to ask them on Discord or whatever, but I try to solve stuff myself otherwise and its helpful

rose orchid
#

Albuquerque "Engine" (Updates every Sunday)

#

I say Sunday but its actually Saturday for the USA timezone

glad kelp
#

are those books from a library?

rose orchid
#

My uni library was giving away a ton yea @glad kelp

glad kelp
#

Das really cool

rose orchid
rose orchid