Demo application that renders a triangle using Vulkan on the Pixel 3A.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. NAME = triangle
  2. all: shaders build deploy run
  3. trace: shaders build deploy runtrace
  4. build:
  5. @echo Building...
  6. @./ndk-build.sh
  7. deploy:
  8. @echo Deploying to device...
  9. @adb push ${NAME}.vert.spv /data/vulkan/${NAME}/
  10. @adb push ${NAME}.frag.spv /data/vulkan/${NAME}/
  11. @adb push libs/arm64-v8a/${NAME} /data/vulkan/${NAME}/
  12. run:
  13. @echo Running on device...
  14. @adb shell "cd /data/vulkan/${NAME} && ./${NAME}"
  15. @echo Copying artifacts back to local device...
  16. @adb pull /data/vulkan/${NAME}/${NAME}.png .
  17. runtrace:
  18. @echo Running on device with tracing...
  19. @adb shell "cd /data/vulkan/${NAME} && LD_PRELOAD=/data/vulkan/libwrap.so ./${NAME}"
  20. @echo Copying artifacts back to local device...
  21. @adb pull /data/vulkan/${NAME}/${NAME}.png .
  22. @adb pull /sdcard/trace.rd .
  23. shaders:
  24. @echo Compiling shaders...
  25. @glslc -c ${NAME}.vert
  26. @glslc -c ${NAME}.frag
  27. clean:
  28. @rm -rf obj
  29. @rm -rf libs
  30. @rm -f ${NAME}.png
  31. @rm -f ${NAME}.vert.spv
  32. @rm -f ${NAME}.frag.spv
  33. @rm -f trace.rd
  34. @adb shell rm /data/vulkan/${NAME}/*