正在加载视频...

视频加载失败

Let me explain what I'm doing here for those who are interested. I've been building a retro-style D3D12 game engine from scratch, and recently implemented a "Spatial Compression" effect. Essentially its a technique that makes distant geometry appear larger than standard perspective projection would, giving scenes a telephoto compression...

47,051 次观看 • 1 个月前 •via X (Twitter)

0 条评论

暂无评论

原始帖子的评论将显示在这里

相关视频

🧑‍🏫 How to make a glass/refraction shader: 🍷 Refraction will ultimately have the effect that whatever is behind your mesh should appear distorted by the surface of the mesh itself. We're not going for external caustics projection, just modelling glass-like, distorting "transparency". 🌆 In Unity, you can sample the *global* _CameraOpaqueTexture (make sure it's enabled in your URP asset settings), which is what your scene looks like rendered without any transparent objects. In Shader Graph, you can simply use the Scene Colour node. 🔢 The UVs required for this texture are the normalized screen coordinates, so if we offset/warp/distort these coordinates and sample the texture, we ultimately produce a distorted image. We can offset the UVs by some normal map, as well as a refraction vector based on the direction from the camera -> the vertex/fragment (flip viewDir, which is otherwise vertex/fragment -> camera) and normals of the object. 📸 Input the (reversed) world space view direction and normal into HLSL refract. **Convert the refraction direction vector to tangent space before adding it to the screen UV.** Use the result to sample _CameraOpaqueTexture. refract(-worldViewDirection, worldNormal, eta); eta -> refraction ratio (from_IOR / to_IOR), > for air, 1.0 / indexOfRefraction (IOR). IOR of water = 1.33, glass = 1.54... 💡 You can also do naive "looks about right" hacks: fresnel -> normal from grayscale, which can be used for distortion. Or distort it any other way (without even specifically using refract at all), really... 🧠 Thus, even if your object is rendered as a transparent type (and vanilla Unity URP will require that it is), it is fully 'opaque' (max alpha), but it renders on its surface what is behind it, using the screen UV. If you distort those UVs by the camera view and normals of the surface it will be rendered on, it then appears like refractive glass on that surface. > Transparent render queue, but alpha = 1.0.

Mirza Beig

125,253 次观看 • 1 年前

** Sega Genesis 3D engine update 8.5 ** A smaller update - Scrolling left or right of the sprite based background is implemented along with X camera shifting of the 3d plane. The Exodus emulator has been used with sprite boxing enabled so you can see the background sprites making up the object ( their outlines ) and how they move to tilt the image . The background is made up of 112 sprites (51 are multiplexed in that number as the Genesis is limited to 80 without mulitplexing eg basically re-using sprite hardware as the screen is being drawn ) . In a 6 x 17 sprite grid of 16x32 pixel high sprites. If the tilt affect was not neccessary or only 1/2 the angle of tilt effect was needed, I could get away with 1/2 the number of sprites and just used 32x32 sprites instead. I think the tilt effect adds a bit to movement however. This is very similar to how a Neo Geo would build its backgrounds up - in 16 pixel strips however its sprites are tall as the screen or more but the concept of making backgrounds up in 16 pixel wide strips is similar. The NG uses sprites to build any background layers required. Here on the Genesis the reason is rendering is much faster using both the 3d planes and using a total sprite background for this engine. Initially i had a lot of things breaking when I tried to move the camera in the X dimension much , as i'd optimised the vertex transform path heavily and once beyond a certain camera offset the X value was wrapping around causing a lot of breakage in the rendering. Thankfully solved that issue without marginal impact to cpu . It still needs work , perspectives are a bit wrong etc but it won't be hard to fix. Also found some rendering speeds ups, about 8% by optimising fully onscreen quads and optimising the clearing of the frame buffers more efficiently. Toni Gálvez - Megastyle - BG. has been hard at work on HUD elements and more 3d models so will have something to show for that soon. #SGDK #SegaMegadrive #SegaGenesis

Shannon Birt

20,435 次观看 • 10 天前

Interesting turn of events with Nancy Guthrie case (mother of NBC host kidnapping) The woman the FBI got the Nest camera footage from didn’t have a Premium subscription Yet without a subscription, even being disabled, it was able to record and store footage “We are tracked, they are listening, they are watching, we are being recorded” What’s happening is even if you don’t have a subscription Google is recording and storing the footage from your doorbell camera, but you can only access it without a subscription You think it’s not being recorded and stored, but it is…. Even with the camera disabled, it was recording footage and able to be recovered… “Nancy Guthrie had a Nest camera, which is owned by Google, and law enforcement initially believed the doorbell footage was lost and said Nancy Guthrie did not have a premium subscription to access video from her doorbell camera — Now, according to Google, if a Nest camera is disabled, it can still record up to three hours of event video history without a subscription. So many are wondering, why did it take so long for this video to be released? Well, it takes time for authorities to basically recover this video from Google servers, since Nancy Guthrie did not have a premium subscription that offers special features for video history. And essentially, video is continuously recorded and saved with a subscription, but without a subscription, video is saved until it's overwritten. In this case, they thought because there was no subscription, it would have been erased and recorded over because it would be sort of a continuous situation. And then that's the real issue here. Look, we live in a surveillance economy and as much as we'd like to think that we can delete things and things will go away, and there are some apps that in fact make things go away, the truth of the matter is that we are tracked, They are listening, they are watching, we are being recorded.”

Wall Street Apes

255,091 次观看 • 5 个月前

Mistral AI Releases Robostral Navigate: An 8B Model Enabling Robots to Navigate Complex Environments Hitting 76.6% on R2R-CE With One RGB Camera. No LiDAR. No depth sensor. No multi-camera rig. Here's how it works. 👇 1. Pointing, not metric commands The model predicts the pixel coordinates of the next target in the camera view, plus the arrival orientation. Working in pixel space keeps it robust to camera intrinsics and world scale. When the target leaves the frame, it falls back to local displacements ("2m forward, 1.5m left, turn 25°"). 2. Grounding-first No open-source VLM base. It starts from Mistral's grounding model (pointing, counting, localization). Navigation emerges once the model knows where things are. → ~400,000 trajectories across 6,000 simulated scenes 3. Prefix-caching for training A tree-based attention mask packs a full episode into one sequence — all time steps in a single forward pass. → 22× fewer training tokens; months of training done in days 4. Online RL on top After supervised training, CISPO adds trial-and-error learning to fight distribution shift from behavior cloning. → +3.2% success rate from RL alone 5. The numbers (R2R-CE, Matterport3D) → 76.6% success on validation unseen → +9.7 pts over best single-camera approach → +4.5 pts over best depth/multi-camera system The key takeaway: state-of-the-art continuous VLN without a sensor stack — grounding-init, pixel-space actions, prefix-cached SFT, and online RL, on one RGB camera. Full analysis: Technical details: Mistral AI Mistral AI for Developers

Marktechpost AI

39,955 次观看 • 21 天前

** MEGA Parodius Scaling Effects Part 1 ** One of the big challenges with the Parodius Megadrive port is Stage 8's boss - The puffer-fish *Pooyan* with his full screen scaling effect. The goal is to be very close to the arcade (with extras on top ) so I thought lets tackle it head on to see how close we can get. I was also keen to jump into another scaling code rabit hole haha. Pyron pulled out all the stops and got me the source frames and reworked the BG tiles for this test - a big thankyou to him , Vector Orbitex is busy working on Stage 2 tracks so the team is working hard all round on this port. The MD has no sprite / background GFX scaling hardware , however the VDPs Vertical scroll can be updated per scanline to help vertical scaling on backgrounds, but there is a cpu cost to manage all the interupts so thats not free either. With the Horizontal scaling there is no help at all , apart from a semi-friendly packed pixel format for the cpu to work with, its not quite chunky format but better than planar format still for scaling. So its falls back to the 68k CPU to do all of the horizontal expansion which is the largest cpu cost. Basically drawing strips of either 1x, 2x, 3x or 4x wide columns at speed. So we are one week into this Boss's routine and you can see from the below video the horizontal scaling is implented ( vertical will be in the next update ) . We are scaling from 1x to 4x in the video below in 74 steps for testing . The column distributions are always a bit painfull to do - thankfully they are all worked out now. This is the third scaler I have built and the goal was with this one to make it really flexible for use in other projects also, sometimes when you optimise something to the last degree all the flexibility gets taken out of it. Currenty scaling at 12-25 FPS update here, I had some rules against some optimisations which I would use and some I wouldn't , thankfully we are a bit ahead of the Arcades animation frame rate here still and I may yet find optimisations that fit within the scope. We have vertical scaling and sprite spikes to add yet so Im hoping i can find a few more optimisations to offset things when they are implemented also. In a scale frame update we are processing close to 42000 pixels in ram before using DMA to send to VRAM . Using a 41x16 (656 tile scale buffer) - single buffered for now due to its size in VRAM. So thats nearly 21k in tiles ! I had to re-organise ram a bit to support a buffer of that size for the stage. The scaling function is written in 68k assembly , with a little C code handling the Vertical interupt code ( so the game logic can actually run & DMA updates etc ) . The DMA routines are in assembly also and customised for large chunk size ( big blocks of tiles ) which suits the scaler. I had some race conditions to sort out where the cpu was faster than DMA (sending tiles from RAM to VRAM ) and in some cases where it wasn't so it had to be balanced. We may be able to add more detail into the top and bottom of the background yet but its low priority for now until all the other bits are in !! #SGDK #SegaMegadrive #Genesis #Parodius

Shannon Birt

25,545 次观看 • 6 个月前

With the release of Kling AI 2.6, I was eager to put it up against one of its arch-rivals….Google Flow Veo 3.1. I ran four separate tests. First, I tested their ability to generate consistent and stable action shots. Second, I tested camera movement in a crowded scene. Third, I tested their ability to generate consistent facial details and emotion. Fourth, I wanted to see how well they can generated an interaction between two characters. Prompt 1: camera tracking shot, wide-shot. The camera tracks above as two nights ride on horses through a forest. The horses a galloping fast. The camera is tracking the knights from above. Prompt 2: Slow camera push in on a man eating Ramen at a Ramen house in Japan. The alley street is busy with people. Prompt 3: Close-up shot of a man on a sailboat. The man has a scared look on his face. After a short pause, the man says, "I'm gonna need a bigger boat” Prompt 4: Static camera. A man picks up a cookie from a plate and takes a bite. His dog looks up at him; eagerly wanting a bite of the cookie. The man turns, looks at the dog, and says, "no cookies for you mister” Verdict🏆: To be honest, I was surprised by Kling 2.6. While Veo 3.1 outperformed Kling 2.6 in the close-up shot test, it slightly underperformed in every other test. In the Veo 3.1 outputs, objects would randomly appear and camera movements were abrupt or didn’t adhere to the prompt. Don’t get me wrong, Kling 2.6 definitely had its flaws (its audio was quieter and often mismatched the prompt). That said, I was impressed with Kling 2.6 more than I imagined I would be. Although a somewhat small lead, I would give Kling 2.6 the slight advantage for this round of tests.

Curious Refuge

24,695 次观看 • 8 个月前