Saurav Sikarwar
Saurav Sikarwar
  • Видео 36
  • Просмотров 35 933
MDS-Year 1 Games Compilation
This is a compilation of some of the games I worked on in my first year at MDS.
Some details of the games:
1. Asteroids 24 - Made in GameMaker
2. First game in the Unreal Engine
3. Shadow Command - Made using SFML. Used A* algorithm for AI to find the optimal path to reach the player.
4. Wasteland Relics - Made in Unity3D. It was a group project and we uploaded a playtest version of it on Itch.io(shinysword.itch.io/wasteland-relics)
Просмотров: 15

Видео

TS_ENGINE - Editor Update 1 (OpenGL, C++, Game Engine Editor)
Просмотров 1 тыс.Год назад
This is the first video which shows the progress on my game engine's editor. TS_ENGINE_Editor github.com/Saurav280191/TS_ENGINE_Editor.git ♫ Music credits ♫ Dream It - TrackTribe Pluck It Up - Dan Henig Groove Tube - Audio Hertz
Instancing in OpenGL (Fixed audio)
Просмотров 393Год назад
This video is about a graphics programming optimization technique called instancing. It helps in reducing the draw calls and get a huge performance gain. Reference to learn: learnopengl.com/Advanced-Open... ♫ Music credits ♫ Wrong - Dan Henig
AutomaticTextureAtlasing + BatchingWithTextures in OpenGL
Просмотров 944Год назад
This video is a continuation of the last 2 videos in which I showed how I am batching meshes and how texture atlasing works. In this video, I've shown how am I doing automatic texture atlasing and how am I using it in the previously batched meshes to get better performance. Source code: github.com/Saurav280191/TS_ENGINE_BatchingDemo #opengl #cplusplus #gameengine ♫ Music credits ♫ Arpy - Dan Henig
Texture Atlasing in OpenGL
Просмотров 2,9 тыс.Год назад
This video is about a graphics programming technique called Texture Atlasing. It combines multiple textures into one texture atlas and helps in reducing the draw calls. Source code: github.com/Saurav280191/TS_ENGINE_BatchingDemo ♫ Music credits ♫ Yellow Jello - Audio Hertz
Batching in OpenGL
Просмотров 21 тыс.Год назад
This video is about a graphics programming optimization technique called Batching. It helps us render different meshes with less number of draw calls and get much better performance. Source code: github.com/Saurav280191/TS_ENGINE_BatchingDemo ♫ Music credits ♫ My Achy Heart - Audio Hertz
Instancing in OpenGL
Просмотров 1,5 тыс.Год назад
This video is about a graphics programming optimization technique called instancing. It helps in reducing the draw calls and get a huge performance gain. Reference to learn: learnopengl.com/Advanced-OpenGL/Instancing ♫ Music credits ♫ Wrong - Dan Henig
Unity3D portfolio
Просмотров 2403 года назад
This video contains some of the projects I've worked on in my previous companies. Hope you like it. :)
Enter/Exit cars + basic driving physics
Просмотров 2893 года назад
Basic car physics implementation for the #OpenWorldZombieGame I'm working on :)
Zombie Game Intro
Просмотров 2085 лет назад
Zombie Game intro for an upcoming game demo
OpenGL Engine With Basic Interface
Просмотров 1585 лет назад
This is the prototype of my OpenGL Engine with an interface
Augmented Reality Honda City Demo
Просмотров 2357 лет назад
Augmented Reality Honda City Demo
Augmented Reality Demo
Просмотров 557 лет назад
Augmented Reality Demo
Augmented Reality Floor Planner
Просмотров 977 лет назад
Augmented Reality Floor Planner
Augmented reality Infrastructure Demo
Просмотров 907 лет назад
Augmented reality Infrastructure Demo
OpenGL GLSL Solar System
Просмотров 6138 лет назад
OpenGL GLSL Solar System
OpenGL GLSL Simple Car with Newtonian physics
Просмотров 3468 лет назад
OpenGL GLSL Simple Car with Newtonian physics
Simple Lighting in OpenGL
Просмотров 5128 лет назад
Simple Lighting in OpenGL
MilkHunt
Просмотров 2408 лет назад
MilkHunt
ModelLoader
Просмотров 1218 лет назад
ModelLoader
GLSL Multiple viewport demo
Просмотров 3158 лет назад
GLSL Multiple viewport demo
OpenGL GLSL Terrain using .raw file HeightMap
Просмотров 5028 лет назад
OpenGL GLSL Terrain using .raw file HeightMap
OpenGL GLSL Demo
Просмотров 279 лет назад
OpenGL GLSL Demo
MultiTexturing OpenGL Demo
Просмотров 1949 лет назад
MultiTexturing OpenGL Demo
OpenGL Camera Movement
Просмотров 1 тыс.9 лет назад
OpenGL Camera Movement
OpenGL Skybox
Просмотров 4479 лет назад
OpenGL Skybox
State Change Notifier
Просмотров 259 лет назад
State Change Notifier
GLSL Scene Node Demo
Просмотров 1249 лет назад
GLSL Scene Node Demo
Cannon
Просмотров 429 лет назад
Cannon

Комментарии

  • @JacobElliottSermons
    @JacobElliottSermons 4 месяца назад

    @ 6:01, the flicker in the back, that is because you are not using mipmaps, I believe - isn't that right?

    • @sauravsikarwar
      @sauravsikarwar 3 месяца назад

      Right. I think I had not added the mipmap code when I created this video. That can be easily added. A lot of other interesting things are pending (Majorly scripting engine and a few complicated architecture changes.

  • @Elikatie25
    @Elikatie25 5 месяцев назад

    Thank you!

  • @marclurr
    @marclurr 7 месяцев назад

    Are you rebuilding the batch mesh data each frame, or just once and reusing it?

    • @sauravsikarwar
      @sauravsikarwar 3 месяца назад

      In this example, I had batched it once. I tested the code separately in which it can be unbatched and rebatched again and even that works but it needs to be managed very carefully.

  • @Cloud5Studios
    @Cloud5Studios 9 месяцев назад

    Plase make a tutorial or a course pls

    • @sauravsikarwar
      @sauravsikarwar 3 месяца назад

      Sure. I will. That the plan for future. I recently joined a college to lean more and get a degree and I am not able dedicate required time on this at the moment.

  • @obinator9065
    @obinator9065 10 месяцев назад

    3:05 You should avoid copying a vector; pass it by reference. Heap allocation is very slow.

    • @sauravsikarwar
      @sauravsikarwar 3 месяца назад

      Makes sense. I'll fix that. Thanks.

  • @10bokaj
    @10bokaj Год назад

    Batching this way only really works for static objects.

  • @matthewexline6589
    @matthewexline6589 Год назад

    Cool explanation, thanks. I think this might somewhat explain what "spritebatch" is in the Monogame Framework. I always wondered why they called it that.

  • @alec1o
    @alec1o Год назад

    Very nice!

  • @ramuyou
    @ramuyou Год назад

    This is very impressive

  • @olbluelips
    @olbluelips Год назад

    Great work

  • @olbluelips
    @olbluelips Год назад

    Nice! I’ll need to implement batching

  • @psjahn
    @psjahn Год назад

    Very cool!

  • @satyammishra5582
    @satyammishra5582 Год назад

    Developing Game Engines are hard, and its only the inner motivation that pushes you! The environment (atleast in India) doesn't motivate you for it! Myself tried two times, spent 8 months and 6 months respectively for two engines, yet ended up abandoning them.. Loved to see you've gone too far! Its just too good, and your renderer, I can't even dream If I could've ever wrote such a feature rich renderer.. Although I hope its not a clone of Hazel, for the most part I am feeling that its hazel 3d..

    • @sauravsikarwar
      @sauravsikarwar Год назад

      Thanks for appreciating Satyam. No it's not a clone of Cherno's Hazel engine. While I was working on TS_Engine's core I used to follow Cherno's videos and gradually created the core architecture. A huge part of the core architecture is still same since Cherno explained it very neatly and I felt changing a good implementation would be unnecessary. For the features that I wanted to add, I had to add alot of new code. Specially for the editor interface. Cleaning up redundant code and adding features to use lights and it's effects is still pending. That is what I am going to target next.

    • @satyammishra5582
      @satyammishra5582 Год назад

      @@sauravsikarwar Thats great! especially the renderer I must say!

  • @darkproject8068
    @darkproject8068 Год назад

    Ура, наконец-то пред-релиз? Грустно что ты не выкладываешь весь код своего проекта... По крайней мере, могу похвалить тебя за то, что ты сделал перемещение "рабочих окон" так как это сделано в Visual Studio. Для меня, это самый удобный и наглядный способ кастомизации рабочего пространства.

    • @sauravsikarwar
      @sauravsikarwar Год назад

      Я рад, что видео было в чем-то полезным. В описании я упомянул полный исходный код для справки.

    • @darkproject8068
      @darkproject8068 Год назад

      ​@@sauravsikarwarПрошу прощения, не заметил зависимости в проекте. Виноват. Помню вы там говорили что хотели привести код в "порядок". Не такого порядка я себе представлял xD. Всё было ещё хуже? Ахаха... За всё время что я вас знаю, я уже довольно сильно углубился в знания С++ и уже могу писать программы используя сложные приёмы из мета-программирования. Нахожу всё это забавным. Но я рад за вас, что вы хотя-бы что-то делаете и показываете это широкой публике. Буду и дальше следить за вашим творчеством. Удачи

    • @sauravsikarwar
      @sauravsikarwar Год назад

      ​@@darkproject8068Спасибо

  • @DevFrogora
    @DevFrogora Год назад

    nice

  • @Overwatch86
    @Overwatch86 Год назад

    Excellent explanation. Not short like you got a bus to catch, and not long and rambling like ur haven't talked to a human in 20 years. This puts other creators to shame. Keep it up

  • @AlbertRyanstein
    @AlbertRyanstein Год назад

    Great stuff thank you for this is there more details somewhere?

    • @sauravsikarwar
      @sauravsikarwar Год назад

      Thanks. Sorry for replying late. Here is the source code for this demo: github.com/Saurav280191/TS_ENGINE_BatchingDemo

  • @Alexey_Pe
    @Alexey_Pe Год назад

    Will LODs be considered?

  • @МухиддинМахмудов-б5щ

    thanks brother

  • @atomictraveller
    @atomictraveller Год назад

    thanks, i was interested in an idea of the performance gain since my ideas don't always involve complex scenes. your work here is appreciated.

  • @ch3dsmaxuser
    @ch3dsmaxuser Год назад

    Great! Would be great to have a look at the source code for your examples, thanks!

    • @sauravsikarwar
      @sauravsikarwar Год назад

      Sorry about the replying so late. I somehow missed your comment. Here it is: github.com/Saurav280191/TS_ENGINE_BatchingDemo

  • @sivaramakrishnanr.7173
    @sivaramakrishnanr.7173 Год назад

    great vid 👌 .... i still havent to learn about textures lol

  • @epoll31
    @epoll31 Год назад

    love it

  • @hexiy_dev
    @hexiy_dev Год назад

    🔥

  • @fangzhoulu4333
    @fangzhoulu4333 Год назад

    Nice content, keep up 👍. I am just wondering if you do the world space transformation on CPU side and transfer mesh data to GPU every frame, is it actually an ideal practice? But certainly, it is better than doing drawcall for every single object each frame. I think in vulkan the MVP can also be easily batched, but not sure about openGL.

    • @sauravsikarwar
      @sauravsikarwar Год назад

      Thanks for liking the video @fangzhou4333. Transformation on CPU is not an ideal practice but in the batching case since all the meshes are combined in one we don't have any other option apart from getting the vertex transformation done on CPU side. In the example I have shown in this video all the models are repositioned once at the start only so I have used GL_STATIC_DRAW but in cases where we need to keep transforming the mesh vertices(eg: batching animated models) on runtime GL_DYNAMIC_DRAW is recommended.

  • @dustinsmith842
    @dustinsmith842 Год назад

    i also believe this is the best way to draw non-specialized geometry requiring simple model structure!

  • @mariocamspam72
    @mariocamspam72 Год назад

    The best IT-related videos on RUclips are made by Indians

    • @loli42
      @loli42 Месяц назад

      INDIA #1

  • @darkproject8068
    @darkproject8068 Год назад

    Забавно, я сейчас тоже изучаю OpenGL. Интересно видеть чужой код, который занимается примерно тем же самым. Буду ждать новых видео! (Дай уже ссылку на какой-либо ресурс, что бы можно было скачать твой исходный код и собрать на своём компьютере. Я вижу ты не очень силён в программировании, потому хватит делать "идеальный код", так может и пару лет пройти, ахахах... Хотя может я ошибаюсь, посмотрим)

    • @sauravsikarwar
      @sauravsikarwar Год назад

      Рад, что вам было интересно. Фрагменты кода, которые я показываю в этих видео, являются временными. Параллельно работаю над своим фреймворком. Следующее видео, которое будет посвящено пакетной обработке текстур. Я, вероятно, продемонстрирую все, что сделано на стороне движка, и поделюсь ссылкой на репозиторий git в этом видео.

    • @darkproject8068
      @darkproject8068 Год назад

      @@sauravsikarwar Удачи, буду следить за вашим творчеством)

    • @sauravsikarwar
      @sauravsikarwar Год назад

      @@darkproject8068 Спасибо

  • @lm2668
    @lm2668 Год назад

    You should make a video for making a game from scratch with OpenGL

    • @sauravsikarwar
      @sauravsikarwar Год назад

      Sure. I am planning to showcase my engine work done till now soon. After that I can do that.

  • @epoll31
    @epoll31 Год назад

    sick videos whats your github

    • @sauravsikarwar
      @sauravsikarwar Год назад

      Thank you :) Haven't made it public yet. I need to sort a few things in my engine code. After that I'll make it public. Will share the GIT link in description after that.

    • @sauravsikarwar
      @sauravsikarwar Год назад

      Hi @MrBlueblue02 . I've upload a new video. That has framework git source mentioned in the description as well. Check it out 🙂

  • @korigamik
    @korigamik Год назад

    Great video but, where can I see the source code for this?

    • @sauravsikarwar
      @sauravsikarwar Год назад

      I haven't uploaded it yet. Will be uploading it on GIT soon and will share the link in description. For reference I've shown some code snippet in the video. Maybe that will help.

    • @korigamik
      @korigamik Год назад

      @@sauravsikarwar that's cool. I'll be waiting for it 👍

    • @sauravsikarwar
      @sauravsikarwar Год назад

      Hi @@korigamik. I've uploaded a new video. That has framework source code mentioned in the description as well. Check it out🙂

    • @ItIsYouAreNotYour
      @ItIsYouAreNotYour Год назад

      @@sauravsikarwar Where? I don't see source code.?

    • @sauravsikarwar
      @sauravsikarwar Год назад

      @@ItIsYouAreNotYour github.com/Saurav280191/TS_ENGINE_BatchingDemo

  • @NagiTangCheong
    @NagiTangCheong Год назад

    Is this the same idea as Unity's batch processing?

    • @sauravsikarwar
      @sauravsikarwar Год назад

      Yes. It is same. On the front end it differs a bit but unity also internally might be processing it in the same way based on which graphics api it is using.

  • @mikewaters2126
    @mikewaters2126 Год назад

    Thank you for this. I really appreciate how tightly organized the video is. Starting with the instancing comparison is great, and the video's very information dense. Doesn't waste time at all.

  • @sshevtsov
    @sshevtsov Год назад

    Thanks. This is very cool video. I wish you to increase amount of views, as very useful content...

  • @draido-dev
    @draido-dev Год назад

    wow, nice work, damn, this video are very epic! please work harder on thumbnails, the video are epic, but thumbnails aren't sry

  • @abdousekhi4933
    @abdousekhi4933 3 года назад

    i made the same terrain and sky box with sketal animation

  • @SuperRakeshsolanki
    @SuperRakeshsolanki 3 года назад

    are Bhai vo din yad aa gye...

  • @jamesrockford2626
    @jamesrockford2626 6 лет назад

    great.........source?

  • @rohit0111nn
    @rohit0111nn 7 лет назад

    bro.. if you need any assistance for 3D part. I will be glad to be part of it

    • @sauravsikarwar
      @sauravsikarwar 7 лет назад

      rohit kumar That would be awesome. I'll let you know.🙂

  • @rohit0111nn
    @rohit0111nn 7 лет назад

    nice work :)

  • @oreonengine9444
    @oreonengine9444 8 лет назад

    great work👍

  • @dakshyadav2037
    @dakshyadav2037 8 лет назад

    make a ofroad race track on it

  • @latlong9344
    @latlong9344 9 лет назад

    Hi Saurav,Nice demo.Did you crack how to move camera along a given path automatically(timer) and not using keyboard control.

    • @sauravsikarwar
      @sauravsikarwar 9 лет назад

      Nope. Maybe you could define a coordinate stream in or outside OpenGL (in XML, Json or txt file) and then use it to move the camera from one point to another.

  • @dakshyadav2037
    @dakshyadav2037 9 лет назад

    make it do dubstep beats

  • @sauravsikarwar
    @sauravsikarwar 9 лет назад

    Hey! Luke. I am multiplying the modelMatrix,viewMatrix and projectionMatrix together , where viewMatrix = glm::rotate(viewMatrix, -m_vRotation.y, glm::vec3(0, 1, 0)); for rotation about Y Axis.

  • @WookieMiner1
    @WookieMiner1 9 лет назад

    Hey man, great vid. I'd like to know how you get the virtual camera to move like that. i can't seem to get it working on mine

  • @sauravsikarwar
    @sauravsikarwar 10 лет назад

    Just if u want to play it yourself : www.dropbox.com/s/x2oduk1cyrhdszj/FPS.zip?dl=0