Coder Social home page Coder Social logo

Comments (4)

floooh avatar floooh commented on August 24, 2024 1

PS: I just fixed that bug that targets are listed as the wrong type, e.g. it now looks like this:

sokol-samples ➤ ./fips list targets 
=== targets:
  config: osx-make-debug
  lib:
    glfw3
    imgui
    cimgui
    imgui-dock
    libmodplug
    flextgl12
  app:
    clear-glfw
    triangle-glfw
    quad-glfw
    cube-glfw
    texcube-glfw
    instancing-glfw
    offscreen-glfw
    mrt-glfw
    arraytex-glfw
    imgui-glfw
    dyntex-glfw
    mipmap-glfw
    blend-glfw
    inject-glfw
    bufferoffsets-glfw
    noninterleaved-glfw
    multiwindow-glfw
    uniformarrays-glfw
    sgl-test-glfw
    metal-glfw

from sokol.

floooh avatar floooh commented on August 24, 2024

This looks like dependencies are missing git submodules.

Can you start from scratch like this in a new directory?

git clone https://github.com/floooh/sokol-samples
cd sokol-samples
./fips build

In general, when using ./fips you should never have to clone dependencies manually, this is only needed if you want to build the samples "manually" without a build system as described here: https://github.com/floooh/sokol-samples?tab=readme-ov-file#how-to-build-without-a-build-system

from sokol.

jeangit avatar jeangit commented on August 24, 2024

Thank you, recloning the whole directory and then relaunch a new build was enough.

But still i have 2 questions

  1. why when i list targets, i get that:
./fips list targets
=== targets:
  config: linux-make-debug
  app:
    glfw3
    imgui
    cimgui
    imgui-dock
    libmodplug
    flextgl12
    clear-glfw
    triangle-glfw
    quad-glfw
    cube-glfw
    texcube-glfw
    instancing-glfw
    offscreen-glfw
    mrt-glfw
    arraytex-glfw
    imgui-glfw
    dyntex-glfw
    mipmap-glfw
    blend-glfw
    inject-glfw
    bufferoffsets-glfw
    noninterleaved-glfw
    multiwindow-glfw
    uniformarrays-glfw
    sgl-test-glfw

but indeed it miss some tests:

~/sources/sokol/samples/sokol-samples$ ls ../fips-deploy/sokol-samples/linux-make-debug/
total 24M
1.2M arraytex-glfw*       1.2M dyntex-glfw*      1.2M mrt-glfw*             776K sgl-test-glfw*
1.2M blend-glfw*          3.9M imgui-glfw*       1.2M multiwindow-glfw*     1.2M texcube-glfw*
1.1M bufferoffsets-glfw*  1.2M inject-glfw*      1.2M noninterleaved-glfw*  1.1M triangle-glfw*
1.1M clear-glfw*          1.2M instancing-glfw*  1.2M offscreen-glfw*       1.2M uniformarrays-glfw*
1.2M cube-glfw*           1.2M mipmap-glfw*      1.1M quad-glfw*
  1. i see in sapp directory a sample using OZZ. But it is not available in targets , and unfortunately i couldn't manage to compile it by hand (i can compile simpler samples by hand in sapp , but not this one).

BTW, i have understood that sapp directory is « agnostic » samples locations (does not need glfw or metal or D3D to be compiled), can you confirm ? You will probably tell me that's the goal of Sokol is to be agnostic, but then, what is the interest to provides glfw / d3d samples ? As Sokol must probably use « under the hood » one of them to initialize contexts, windows…

Thank you.

ps: if you think that this is rather a forum discussion than an issue report, i would be glad to have the location where i could post this ;)

from sokol.

floooh avatar floooh commented on August 24, 2024
  1. The targets glfw3, imgui, cimgui, imgui-dock, libmodplug, flextgl12 are actually static link library targets, not applications (not sure actually why they are listed as apps, must be a regression in fips).

  2. Different build configs have different build targets. For instance when you switch to one of the sapp-configs:

./fips set config sapp-linux-make-debug
./fips gen
./fips list targets

...you'll see all the sokol_app.h + sokol_gfx.h samples (in the sapp directory).

  1. sokol_gfx.h can be used without sokol_app.h, and without a shader-cross-compiler like sokol-shdc. The minimal samples under glfw/, d3d11/ and metal basically demonstrate how to do that, while the 'cross-platform samples' under sapp/ are the "full package" demonstrating how to write fully platform-agnostic samples via sokol_app.h and the sokol-shdc shader compiler.

from sokol.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.