دوره جامع

Three.js

دوره جامع Three.js

Three.js یک کتابخانه قدرتمند جاوا اسکریپت است که برای ایجاد گرافیک‌های سه بعدی و انیمیشن‌ها به طور مستقیم در مرورگر با استفاده از WebGL استفاده می‌شود. با ارائه ابزارهایی برای رندر صحنه‌ها، ایجاد اشیاء سه بعدی، افزودن نور، بافت و فیزیک، فرآیند ایجاد تجربیات سه بعدی همه جانبه را ساده می‌کند و آن را برای وبسایت‌های تعاملی، بازی‌ها و برنامه‌های واقعیت مجازی ایده‌آل می‌کند. یادگیری Three.js برای توسعه‌دهندگان وب مشتاقی که به دنبال تخصص در طراحی وب مدرن و جذاب هستند یا وارد صنایعی مانند بازی، AR/VR یا توسعه خلاقانه می‌شوند، که در آن محتوای وب سه بعدی بسیار ارزشمند است، مهم است.
یک معلم خصوصی می‌تواند این فرآیند یادگیری را با ارائه راهنمایی‌های واضح در مورد اصول Three.js، تجزیه مفاهیم پیچیده سه‌بعدی، و ارائه پروژه‌های عملی برای کمک به زبان‌آموزان برای ایجاد سریع برنامه‌های سه بعدی بصری خیره‌کننده و کاربردی برای مجموعه‌های خود، تسریع بخشد.



Chapter 1: Introduction to Three.js
  • Lesson 1: What is Three.js?
  • Lesson 2: Evolution of Three.js: Key updates and modern features in recent versions
  • Lesson 3: Three.js Use Cases: Web applications, games, VR/AR, data visualization
  • Lesson 4: Setting Up the Development Environment: Installing Three.js, CDN vs. npm, Webpack, Vite
Chapter 2: Basics of Three.js
  • Lesson 1: Understanding the Scene, Camera, and Renderer: The core building blocks
  • Lesson 2: Adding Objects to the Scene: Geometries, Materials, and Meshes
  • Lesson 3: Lights and Shadows: Types of lights and how to use them effectively
  • Lesson 4: Loading and Managing Assets: Textures, models, and font loading
Chapter 3: Camera and Controls
  • Lesson 1: Types of Cameras: Perspective vs. Orthographic
  • Lesson 2: Controlling the Camera: OrbitControls, FlyControls, and FirstPersonControls
  • Lesson 3: Animating the Camera: Smooth transitions and camera movement
Chapter 4: Materials and Textures
  • Lesson 1: Introduction to Three.js Materials: Basic, Lambert, Phong, Standard, and Physical materials
  • Lesson 2: Applying Textures: Loading image textures, bump maps, normal maps
  • Lesson 3: Advanced Material Properties: Transparency, reflectivity, emissive materials
Chapter 5: Working with Geometries
  • Lesson 1: Built-in Geometries: Box, Sphere, Plane, Torus, etc.
  • Lesson 2: Custom Geometries: Modifying vertices and faces
  • Lesson 3: Using BufferGeometry: Creating optimized and custom 3D objects
Chapter 6: Lights and Shadows
  • Lesson 1: Types of Lights in Three.js: PointLight, DirectionalLight, SpotLight, AmbientLight
  • Lesson 2: Creating Realistic Lighting: Light intensity, color, and positioning
  • Lesson 3: Implementing Shadows: Shadow mapping and shadow parameters
Chapter 7: Animation and Physics
  • Lesson 1: Basic Animations with GSAP and Tween.js
  • Lesson 2: Using the Three.js Animation System: Keyframes, clips, and blending
  • Lesson 3: Adding Physics: Integrating Cannon.js and Ammo.js for realistic simulations
Chapter 8: Loading External Models
  • Lesson 1: Importing 3D Models: GLTF, OBJ, FBX, and Collada formats
  • Lesson 2: Optimizing 3D Models for Performance: Reducing file size and complexity
  • Lesson 3: Interacting with Imported Models: Animations, morph targets, and skeletal animation
Chapter 9: Particle Systems and Effects
  • Lesson 1: Creating Particle Systems: Using Points and PointCloud
  • Lesson 2: Simulating Fire, Smoke, and Rain Effects
  • Lesson 3: Post-processing Effects: Bloom, Depth of Field, Motion Blur
Chapter 10: Raycasting and User Interaction
  • Lesson 1: Understanding Raycasting: Detecting clicks and object intersections
  • Lesson 2: Handling Mouse and Touch Events: Interacting with 3D elements
  • Lesson 3: Implementing Drag-and-Drop and Object Selection
Chapter 11: Advanced Rendering Techniques
  • Lesson 1: Shader Materials and GLSL: Writing custom shaders
  • Lesson 2: PBR (Physically Based Rendering): Using realistic lighting and materials
  • Lesson 3: Implementing Reflection and Refraction: Cube mapping and environment mapping
Chapter 12: Virtual Reality (VR) and Augmented Reality (AR)
  • Lesson 1: Introduction to WebXR: Setting up VR and AR experiences
  • Lesson 2: Creating VR Applications: Using WebXR with Three.js
  • Lesson 3: Building AR Applications: Integrating Three.js with WebAR frameworks
Chapter 13: Real-Time Performance Optimization
  • Lesson 1: Improving Rendering Performance: Using InstancedMesh and LOD (Level of Detail)
  • Lesson 2: Memory Management: Reducing draw calls and optimizing texture loading
  • Lesson 3: GPU Optimization: Using WebGL extensions and worker threads
Chapter 14: Three.js with Other Libraries and Frameworks
  • Lesson 1: Integrating Three.js with React (react-three-fiber)
  • Lesson 2: Using Three.js with Vue.js and Angular
  • Lesson 3: Combining Three.js with WebGL and WebGPU
Chapter 15: Exporting and Deploying Three.js Projects
  • Lesson 1: Exporting to Different Formats: Converting scenes to GLTF, FBX
  • Lesson 2: Hosting and Deploying Three.js Applications: GitHub Pages, Vercel, Netlify
  • Lesson 3: Packaging as a Desktop or Mobile App: Electron and Cordova integration
Chapter 16: Building a Complete 3D Web Application
  • Lesson 1: Project Planning: Setting up a real-world 3D project
  • Lesson 2: Implementing User Interactions: UI elements, buttons, and controls
  • Lesson 3: Finalizing and Deploying the Application
Chapter 17: Modern Three.js Features and Future Trends
  • Lesson 1: Latest Features in Three.js: Exploring recent updates and improvements
  • Lesson 2: Future of Web 3D: WebGPU, AI-powered 3D rendering, and Metaverse integration
  • Lesson 3: Best Practices for Scalable Three.js Applications
مدت دوره: 50 + 10 ساعت

تمامی کدهای Three.js این دوره و همچنین فایلpdf کامل تدریس دوره در اختیار دانشجویانی که در این دوره ثبت نام نمایند، قرار خواهد گرفت. در پایان دوره، یک پروژه عملی به مدت حدود 10 ساعت با همکاری مدرس و دانشجو انجام خواهد شد، که آمادگی کامل برای ورود به بازار کار را ایجاد نماید.
هزینه هر جلسه 1 ساعته تدریس خصوصی برای دوره فوق، برای 1 نفر معادل 350 هزار تومان و برای 2 نفر، هر نفر 250 هزار تومان و برای 3 نفر، هر نفر 200 هزار تومان می‌باشد.
شماره تماس واتساپ و تلگرام: 09124908372 ، 09354908372

پیام شما