# Zoom Extension

**URL:** <https://forum.makecode.com/t/zoom-extension/13745>\
**Category:** Arcade\
**Tags:** extension\
**Created:** [May 23, 2022, 9:11pm UTC](https://forum.makecode.com/t/zoom-extension/13745 "2022-05-23T21:11:12Z")\
**Posts on this page:** 18\
**Page:** 2

<div class="post-metadata">

**Author:** ![Sonicblaston](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/sonicblaston/32/19164_2.png) [@Sonicblaston](https://forum.makecode.com/u/Sonicblaston)\
**Post date:** [June 1, 2022, 5:17pm UTC](https://forum.makecode.com/t/zoom-extension/13745/21 "2022-06-01T17:17:56Z")

</div>

But how to I make everything smaller?

---

<div class="post-metadata">

**Author:** ![Kiwiphoenix364](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kiwiphoenix364/32/14368_2.png) [@Kiwiphoenix364](https://forum.makecode.com/u/Kiwiphoenix364)\
**Post date:** [June 1, 2022, 10:06pm UTC](https://forum.makecode.com/t/zoom-extension/13745/22 "2022-06-01T22:06:21Z")

</div>

A new update is out (with the same link as before, kiwiphoenix364/pxt-zoom), which allows you to zoom into different sides of the screen (still, what you zoom into has to originally be on camera), so if you want to zoom into any side of the screen without changing the camera position, that is now possible! (center is the original one, and top-left, top, top-right, left, right, bottom-left, bottom, and bottom-right have been added!) I plan to keep updating this extension according to the feedback of others on this forum post, as well as (maybe, if I can figure it out) add an option for smooth zooming, as well as zooming that doesn’t require on game update (blocks that say like “zoom by \_\_ times for \_\_ms”, or even “zoom from \_\_ times to \_\_ times over \_\_ ms”.

---

<div class="post-metadata">

**Author:** ![Kiwiphoenix364](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kiwiphoenix364/32/14368_2.png) [@Kiwiphoenix364](https://forum.makecode.com/u/Kiwiphoenix364)\
**Post date:** [November 2, 2022, 2:59am UTC](https://forum.makecode.com/t/zoom-extension/13745/23 "2022-11-02T02:59:23Z")

</div>

UPDATE 2.0 IS OUT!  
(I know you’ll like this @danger_kitty lol!)  
With the help of @AqeeAqee on [this topic](https://forum.makecode.com/t/how-would-one-make-these-screen-effects/12341/32), I figured out a new way of zooming - but it runs wayyyy better (almost as if the extension wasn’t running) and even has full perf on hardware! It’s the same extension (kiwiphoenix364/pxt-zoom), but the blocks are reworked to be better and more intuitive! Zoom no longer works in the negative values due to how it is coded. (Although I could easily add that in manually - but I may add new blocks for zooming x and y individually, so I will probably wait until then to implement negative values, I may also add a mirror screen block for ease of use as an addition too.)

The offset block will zoom with an offset of the specified pixels, and the anchor one will be anchored to one part of the screen! If you click +, it will zoom from its current “zoom level” to the new one in a specified number of milliseconds, or if the + isn’t clicked (or the number is set to below 25, the time between screen updates in the extension), it will zoom instantly. To set the zoom back to normal, simply set the zoom to 1. Enjoy!!!

> **[zoom demo](https://arcade.makecode.com/50505-92454-12490-70719)**
>
> Made with ❤️ in Microsoft MakeCode Arcade.

---

<div class="post-metadata">

**Author:** ![personalnote](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/personalnote/32/31359_2.png) [@personalnote](https://forum.makecode.com/u/personalnote)\
**Post date:** [November 2, 2022, 4:49pm UTC](https://forum.makecode.com/t/zoom-extension/13745/24 "2022-11-02T16:49:42Z")

</div>

lets gooooo metroid dread melee counter is finally possible

---

<div class="post-metadata">

**Author:** ![Kiwiphoenix364](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kiwiphoenix364/32/14368_2.png) [@Kiwiphoenix364](https://forum.makecode.com/u/Kiwiphoenix364)\
**Post date:** [November 7, 2022, 12:21pm UTC](https://forum.makecode.com/t/zoom-extension/13745/25 "2022-11-07T12:21:21Z")

</div>

Btw, old games with this extension may be messed up now if you edit them because of the changed blocks (Idk if the extension updates unless done manually though). The current blocks are here to stay and I won’t be doing any updates that break current projects anymore. Feel free to use this extension in your projects.

Also, @UnsignedArduino can you update this entry on your list? Now it doesn’t use on game update and instead just sets the zoom, and includes smooth zooming.

I also won’t add new blocks (most likely) as I’m working on a new project which is in development, currently as kiwiphoenix364/pxt-beta-screen-effects, which will include zooming, bluring, and more (on hardware too)! When it is out of the development process, Feel free to play with it, but NOT on games you care about. Most likely your games will break if you use this because I will be updating this a lot. It will get a new link and forum post when released, which will be stable!

---

<div class="post-metadata">

**Author:** ![UnsignedArduino](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/unsignedarduino/32/592_2.png) [@UnsignedArduino](https://forum.makecode.com/u/UnsignedArduino)\
**Post date:** [November 7, 2022, 11:41pm UTC](https://forum.makecode.com/t/zoom-extension/13745/26 "2022-11-07T23:41:02Z")

</div>

Done. Can’t wait to see the new extension!

---

<div class="post-metadata">

**Author:** ![Kiwiphoenix364](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kiwiphoenix364/32/14368_2.png) [@Kiwiphoenix364](https://forum.makecode.com/u/Kiwiphoenix364)\
**Post date:** [November 9, 2022, 10:40pm UTC](https://forum.makecode.com/t/zoom-extension/13745/27 "2022-11-09T22:40:03Z")

</div>

As I said, you can use it for beta testing at kiwiphoenix364/pxt-beta-screen-effects now, but (except at the time of the previous post I forgot to create a release). (again, don’t use this in projects you care about/want to keep working on, as they will most likely break in the future) I’ve added a new effect, static, which takes the colors on-screen and makes a “static” effect from them. I’ve also made [a topic](https://forum.makecode.com/t/screen-effects-extension-development-q-a-feature-requests/16246) that shows updates and new features, as well as takes feature suggestions and questions for this new extension (as it is somewhat off-topic to this zoom extension post)

---

<div class="post-metadata">

**Author:** ![danger\_kitty](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/danger_kitty/32/32006_2.png) [@danger\_kitty](https://forum.makecode.com/u/danger_kitty)\
**Post date:** [November 10, 2022, 11:03pm UTC](https://forum.makecode.com/t/zoom-extension/13745/28 "2022-11-10T23:03:10Z")

</div>

Yes beta mode

---

<div class="post-metadata">

**Author:** ![George-LJH](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/george-ljh/32/13810_2.png) [@George-LJH](https://forum.makecode.com/u/George-LJH)\
**Post date:** [May 13, 2024, 2:07am UTC](https://forum.makecode.com/t/zoom-extension/13745/29 "2024-05-13T02:07:29Z")

</div>

Super Usefull:

![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/2X/1/15ef4a7bbf198627766122e6d7b73f218e045482.png)

It will make it zoom in and follow the player.  
Thanks, @Kiwiphoenix364!

---

<div class="post-metadata">

**Author:** ![Kiwiphoenix364](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kiwiphoenix364/32/14368_2.png) [@Kiwiphoenix364](https://forum.makecode.com/u/Kiwiphoenix364)\
**Post date:** [May 13, 2024, 4:36am UTC](https://forum.makecode.com/t/zoom-extension/13745/30 "2024-05-13T04:36:31Z")

</div>

I do believe typically the extension with camera follow player is enough, unless you are going against the edges of the screen which might need some extra math. But thank you for using my extension, hope you enjoy! I tried to make it flexible.

---

<div class="post-metadata">

**Author:** ![Sonicblaston](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/sonicblaston/32/19164_2.png) [@Sonicblaston](https://forum.makecode.com/u/Sonicblaston)\
**Post date:** [December 11, 2024, 6:16pm UTC](https://forum.makecode.com/t/zoom-extension/13745/31 "2024-12-11T18:16:53Z")

</div>

I know this is a dead project. But I was wondering if @Kiwiphoenix364 Have any answers to why I am getting this error?

 ![Skjermbilde 2024-12-11 190522](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/a/f/af094bef9f900d19e872bf6a517eb94aa623c5cc.png)

---

<div class="post-metadata">

**Author:** ![not\_a\_lemon](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/not_a_lemon/32/35289_2.png) [@not\_a\_lemon](https://forum.makecode.com/u/not_a_lemon)\
**Post date:** [August 12, 2025, 1:22pm UTC](https://forum.makecode.com/t/zoom-extension/13745/32 "2025-08-12T13:22:37Z")

</div>

@Kiwiphoenix364 is there a way to set the resolution to any size, eg. 512 x 512 as the set resolution but zooming in to 120 x 160

---

<div class="post-metadata">

**Author:** ![Kiwiphoenix364](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kiwiphoenix364/32/14368_2.png) [@Kiwiphoenix364](https://forum.makecode.com/u/Kiwiphoenix364)\
**Post date:** [August 12, 2025, 4:34pm UTC](https://forum.makecode.com/t/zoom-extension/13745/33 "2025-08-12T16:34:47Z")

</div>

[Check out this for changing the resolution.](https://forum.makecode.com/t/how-hardware-handles-increased-screen-sizes-what-i-found/24847) After that, the zoom extension should just work because a while back I made it compatible with any resolution. So say you set the resolution to double that of normal, you should just be fine to zoom into 2x to go back to the original.

---

<div class="post-metadata">

**Author:** ![not\_a\_lemon](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/not_a_lemon/32/35289_2.png) [@not\_a\_lemon](https://forum.makecode.com/u/not_a_lemon)\
**Post date:** [August 12, 2025, 6:17pm UTC](https://forum.makecode.com/t/zoom-extension/13745/34 "2025-08-12T18:17:23Z")

</div>

yes, I know this strategy but I’m asking if there is a way to set the width and height using the zoom extension; I’m making a console and I’m trying to make it compatible with any resolution, so if I set the default resolution to 512 x 512, could I zoom in to let’s say 320 x 240?

---

<div class="post-metadata">

**Author:** ![Kiwiphoenix364](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kiwiphoenix364/32/14368_2.png) [@Kiwiphoenix364](https://forum.makecode.com/u/Kiwiphoenix364)\
**Post date:** [August 12, 2025, 6:44pm UTC](https://forum.makecode.com/t/zoom-extension/13745/35 "2025-08-12T18:44:52Z")

</div>

Possibly but some pixels may not be uniform. Also just make note that you’ll have to calculate the number (from quick calculation at 512x512 you’d have to use 1.6x zoom for 320x320). If you wanted a different aspect ratio, you’d have to put black bars around it manually though. I’d recommend making everything the same aspect ratio for this reason.

---

<div class="post-metadata">

**Author:** ![not\_a\_lemon](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/not_a_lemon/32/35289_2.png) [@not\_a\_lemon](https://forum.makecode.com/u/not_a_lemon)\
**Post date:** [August 12, 2025, 6:48pm UTC](https://forum.makecode.com/t/zoom-extension/13745/36 "2025-08-12T18:48:16Z")

</div>

ok thanks.

---

<div class="post-metadata">

**Author:** ![mathIsKindaCool](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/mathiskindacool/32/23986_2.png) [@mathIsKindaCool](https://forum.makecode.com/u/mathIsKindaCool)\
**Post date:** [August 13, 2025, 9:14pm UTC](https://forum.makecode.com/t/zoom-extension/13745/37 "2025-08-13T21:14:27Z")

</div>

could you make the old one public or add a way to zoom out plz 🙏

---

<div class="post-metadata">

**Author:** ![Kiwiphoenix364](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/kiwiphoenix364/32/14368_2.png) [@Kiwiphoenix364](https://forum.makecode.com/u/Kiwiphoenix364)\
**Post date:** [October 4, 2025, 9:58pm UTC](https://forum.makecode.com/t/zoom-extension/13745/38 "2025-10-04T21:58:00Z")

</div>

Extension has been updated, as outlined in this post:

> [@Barricade8: BARRIER console](https://forum.makecode.com/t/barricade8-barrier-console/38582/61):
>
> I pushed a fix, so now if a new scene is created, a new corresponding zoom renderable will be associated with it (initially undefined, but it will get defined if a zoom block is used, making a new scene essentially have the zoom extension reset). Now, since the zoom renderable corresponds to the current scene, that means that if you pop a scene, the popped scene’s renderable will be destroyed along with it, and the old zoom layer will still be there upon returning to the previous screen. To upg…

[Previous page](https://forum.makecode.com/t/zoom-extension/13745.md?page=1)
