Physically-based rendering. Ray marching
Если ты сейчас здесь, скорее всего, тебе интересна компьютерная графика и фотореалистичный рендеринг. В этой статье я постарался рассказать об основных понятиях и объяснить базовые принципы трассировки лучей. Если внимательно ее прочитать, в конце можно получить правдоподобную фотографию мыльного пузыря и не только.
Часть 1 Часть 2
#cpp #programming
👉 @cpp_lib
Если ты сейчас здесь, скорее всего, тебе интересна компьютерная графика и фотореалистичный рендеринг. В этой статье я постарался рассказать об основных понятиях и объяснить базовые принципы трассировки лучей. Если внимательно ее прочитать, в конце можно получить правдоподобную фотографию мыльного пузыря и не только.
Часть 1 Часть 2
#cpp #programming
👉 @cpp_lib
👍5
Общий обзор того, что происходит перед main()
https://embeddedartistry.com/blog/2019/04/08/a-general-overview-of-what-happens-before-main
#cpp #programming
👉 @cpp_lib
https://embeddedartistry.com/blog/2019/04/08/a-general-overview-of-what-happens-before-main
#cpp #programming
👉 @cpp_lib
Embedded Artistry
A General Overview of What Happens Before main() - Embedded Artistry
8 April 2019 by Phillip Johnston • Last updated 22 August 2022For most programmers, a C or C++ program’s life begins at the main function. They are blissfully unaware of the hidden steps that happen between invoking a program and executing main. Depending…
👍5
Bjarne Stroustrup: C++ | Lex Fridman Podcast
https://www.youtube.com/watch?v=uTxRF5ag27A
#cpp #programming
👉 @cpp_lib
https://www.youtube.com/watch?v=uTxRF5ag27A
#cpp #programming
👉 @cpp_lib
YouTube
Bjarne Stroustrup: C++ | Lex Fridman Podcast #48
👍4
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
С++ с нуля
1 - переменные, оператор присваивания
2 - арифметические операции
3 - директивы препроцессора
4 - условные операторы if и switch
5 - операторы циклов while, for и do while
6 - массивы, метод всплывающего пузырька
7 - строки и функции работы с ними
8 - функции: прототипы, перегрузка, рекурсия
9 - области видимости переменных, статические переменные
10 - битовые операции И, ИЛИ, НЕ, XOR и сдвиговые операции
#cpp #programming
👉 @cpp_lib
1 - переменные, оператор присваивания
2 - арифметические операции
3 - директивы препроцессора
4 - условные операторы if и switch
5 - операторы циклов while, for и do while
6 - массивы, метод всплывающего пузырька
7 - строки и функции работы с ними
8 - функции: прототипы, перегрузка, рекурсия
9 - области видимости переменных, статические переменные
10 - битовые операции И, ИЛИ, НЕ, XOR и сдвиговые операции
#cpp #programming
👉 @cpp_lib
👍8
Просто о сложном — пишем тесты с Google C++ Testing Framework (GTest, GMock)
Всем привет. Недавно по работе возникла потребность разобраться с созданием новых тестов на GTest/GMock. Конкретно мой вопрос был связан с его конструкциями типа EXPECT_CALL и моками - что это за магические штуки и как они работают? Однако, по мере изучения выяснились и другие интересные вещи, с которыми хотел бы поделиться.
#cpp #programming
👉 @cpp_lib
Всем привет. Недавно по работе возникла потребность разобраться с созданием новых тестов на GTest/GMock. Конкретно мой вопрос был связан с его конструкциями типа EXPECT_CALL и моками - что это за магические штуки и как они работают? Однако, по мере изучения выяснились и другие интересные вещи, с которыми хотел бы поделиться.
#cpp #programming
👉 @cpp_lib
Хабр
Просто о сложном — пишем тесты с Google C++ Testing Framework (GTest, GMock)
Всем привет. Недавно по работе возникла потребность разобраться с созданием новых тестов на GTest/GMock. Конкретно мой вопрос был связан с его конструкциями типа EXPECT_CALL и моками - что это за...
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Приложение для аудиозвонков с регулировкой звука, как в реальной жизни
Распространенная в пандемию ситуация: общаетесь с друзьями или коллегами по Zoom, несколько человек начинают говорить одновременно и… разобрать хоть что-то не представляется возможным. Эта проблема натолкнула нас на идею написать свое приложение для аудиозвонков, где громкость регулируется весьма необычным образом. У каждого пользователя есть свой аватар — кружок на плоскости, который управляется перетаскиванием. Чем ближе аватары пользователей на экране, тем громче они друг друга слышат. Работает ли это? В целом да. Рассказываем, что у нас получилось.
#cpp #programming
👉 @cpp_lib
Распространенная в пандемию ситуация: общаетесь с друзьями или коллегами по Zoom, несколько человек начинают говорить одновременно и… разобрать хоть что-то не представляется возможным. Эта проблема натолкнула нас на идею написать свое приложение для аудиозвонков, где громкость регулируется весьма необычным образом. У каждого пользователя есть свой аватар — кружок на плоскости, который управляется перетаскиванием. Чем ближе аватары пользователей на экране, тем громче они друг друга слышат. Работает ли это? В целом да. Рассказываем, что у нас получилось.
#cpp #programming
👉 @cpp_lib
👍5
NanoBoyAdvance - высокоточный эмулятор Nintendo Game Boy Advance.
https://www.libhunt.com/r/NanoBoyAdvance
#cpp #programming
👉 @cpp_lib
https://www.libhunt.com/r/NanoBoyAdvance
#cpp #programming
👉 @cpp_lib
👍3
Пользовательские типы и std::format в C++20
https://www.cppstories.com/2022/custom-stdformat-cpp20/
#cpp #programming
👉 @cpp_lib
https://www.cppstories.com/2022/custom-stdformat-cpp20/
#cpp #programming
👉 @cpp_lib
👍4
Media is too big
VIEW IN TELEGRAM
Запись конференции THE CANADIAN C++ CONFERENCE CppNorth 2022
Carbon Language: An experimental successor to C++ - Chandler Carruth
Quadrable - Doug Hoyte
Keynote: "Am I A Good Programmer?" - Kate Gregory
The Power Of Compile-Time Resources - Jason Turner
Programming for Warm Days: Avoiding Dangerous Conversions - Patrice Roy
OLD VERSION: Building Abstractions at the Hardware-software Boundary - Andrew Bitar & Aidan Wood
C++ Lambda Idioms - Timur Doumler
Cute C++ Tricks (and what you can learn from them): Part 2 of N - Daisy Hollman
Value Oriented Programming. Part 1: You Say You Want To Write A Function - Tony Van Eerd CppNorth 22
Lessons Learned From Porting LibreOffice's Build System To Meson - Jussi Pakkanen
...
По ссылке ниже доступно 33 видео
https://www.youtube.com/playlist?list=PLpGV-BujcAKFVCWOBj2548vuxJ1lV5w6-
#cpp #programming
👉 @cpp_lib
Carbon Language: An experimental successor to C++ - Chandler Carruth
Quadrable - Doug Hoyte
Keynote: "Am I A Good Programmer?" - Kate Gregory
The Power Of Compile-Time Resources - Jason Turner
Programming for Warm Days: Avoiding Dangerous Conversions - Patrice Roy
OLD VERSION: Building Abstractions at the Hardware-software Boundary - Andrew Bitar & Aidan Wood
C++ Lambda Idioms - Timur Doumler
Cute C++ Tricks (and what you can learn from them): Part 2 of N - Daisy Hollman
Value Oriented Programming. Part 1: You Say You Want To Write A Function - Tony Van Eerd CppNorth 22
Lessons Learned From Porting LibreOffice's Build System To Meson - Jussi Pakkanen
...
По ссылке ниже доступно 33 видео
https://www.youtube.com/playlist?list=PLpGV-BujcAKFVCWOBj2548vuxJ1lV5w6-
#cpp #programming
👉 @cpp_lib
👍3
Оптимизация GUI на Qt
Как правило, при создании desktop-приложений на платформе Qt не возникает проблем, связанных с медленностью работы GUI. Qt – платформа достаточно надежная, неплохо вылизанная по всем параметрам, в том числе и по скорости работы. Однако всё же иногда бывают ситуации, когда из-за обилия виджетов графический интерфейс немного притормаживает, и это печально). В этой статье я приведу один частный пример простого графического интерфейса и покажу, как за два шага можно сначала ускорить его в 11 раз, а потом и в целых 34 раза. Вдобавок к этому, я постараюсь немного осветить механизм принятия решения для таких оптимизационных задач, постараюсь показать направление мыслей для правильного решения. Поехали!
https://habr.com/ru/post/672962/
#cpp #programming
👉 @cpp_lib
Как правило, при создании desktop-приложений на платформе Qt не возникает проблем, связанных с медленностью работы GUI. Qt – платформа достаточно надежная, неплохо вылизанная по всем параметрам, в том числе и по скорости работы. Однако всё же иногда бывают ситуации, когда из-за обилия виджетов графический интерфейс немного притормаживает, и это печально). В этой статье я приведу один частный пример простого графического интерфейса и покажу, как за два шага можно сначала ускорить его в 11 раз, а потом и в целых 34 раза. Вдобавок к этому, я постараюсь немного осветить механизм принятия решения для таких оптимизационных задач, постараюсь показать направление мыслей для правильного решения. Поехали!
https://habr.com/ru/post/672962/
#cpp #programming
👉 @cpp_lib
👍6👎1