Commit Graph

78 Commits

Author SHA1 Message Date
Hajime Hoshi
db34930ae8 internal/graphics: add built-in Kage functions
This change adds these Kage functions:

* imageDstOrigin
* imageDstSrc
* imageSrcNOrigin
* imageSrcNSrc

and deprecates these functions:

* imageDstRegionOnTexture
* imageSrcRegionOnTexture

Closes #1870
2023-08-28 15:06:45 +09:00
Hajime Hoshi
63df6168d9 internal/shader: use plural forms for Kage compiler directives
This change renames

```
//kage:unit texel
//kage:unit pixel
```

to

```
//kage:unit texels
//kage:unit pixels
```

.

Closes #2717
2023-08-01 11:41:38 +09:00
Hajime Hoshi
49582519c1 all: add a compiler directive kage:unit
This change adds a new compiler directive 'kage:unit' to Kage. This
takes one of these two values: 'pixel' and 'texel'. The default value
is 'texel'.

With the pixel-unit mode, all the built-in functions treats pixels
instead of texels, and the texCoord argument of Fragment is in pixels.
This simplifies shader programs as programs no longer have the notion
of texels.

With the texel-unit mode, the behavior is the same as the current
behavior.

Closes #1431
2023-04-23 22:11:57 +09:00
Hajime Hoshi
01bb42526a examples/shader: refactoring 2023-04-23 16:29:23 +09:00
Hajime Hoshi
bf18a5e998 examples/shader: bug fix: normalize pos correctly 2023-04-17 22:36:31 +09:00
Hajime Hoshi
820548ed68 example/shader: make default.go more deterministic 2023-04-17 22:27:27 +09:00
Hajime Hoshi
1c14ba8eeb examples/shader: add comments
Updates #1431
2023-04-13 14:16:55 +09:00
Hajime Hoshi
0776a54712 examples/shader: remove comments 2023-04-13 14:10:34 +09:00
Hajime Hoshi
2d6e13cda4 examples/shader: bug fix: wrong usages of position
Closes #2638
Updates #1431
2023-04-13 02:02:15 +09:00
Hajime Hoshi
f054a7634a ebiten: deprecate (*Image).Size
Closes #2351
2023-01-20 01:26:37 +09:00
Hajime Hoshi
760e6b9ebd examples/shader: bug fix: use pixels instead of texels for offsets
Closes #2483
2022-12-03 22:46:10 +09:00
Artem Yadelskyi
86e694941f
examples: remove example build tag (#2433)
Closes #1462
2022-11-03 20:24:09 +09:00
Artem Yadelskyi
10415d417a
all: replace interface{} with any (#2430)
Closes #2429
2022-11-03 15:33:09 +09:00
Artem Yadelskyi
5b53cef59e
all: remove old // +build comments (#2431)
Closes #2325
2022-11-03 12:55:14 +09:00
Hajime Hoshi
0803342d01 examples/shader: remove the CRT effect 2022-10-14 16:14:46 +09:00
Hajime Hoshi
93c09633ee examples/shader: bug fix: wrong function usages
The tex-coord should have been modified by the source texture
region/size, rather than the destination texture's.
2022-10-14 16:04:09 +09:00
Hajime Hoshi
67400d242b examples/resource: use go:embed for images
Closes #1258
2022-09-17 23:27:45 +09:00
Hajime Hoshi
289129c9e5 examples/shader: use go:embed
Updates #1258
2022-09-15 23:18:49 +09:00
Hajime Hoshi
f7c44f086f replace Ebiten with Ebitengine in comments 2022-08-29 11:17:17 +09:00
Hajime Hoshi
b858f36d54 remove the dependency on file2byteslice
Specify the version explicitly instead.
2022-08-23 16:34:55 +09:00
divVerent
21207f827c
do not require installing file2byteslice to update go generate'd files. (#2221)
The tool is already referenced in go.mod, so it is trivial to just go run it -
that way, go generate can use it without the user explicitly installing it first.
2022-07-29 20:43:23 +09:00
Hajime Hoshi
bd72ca971e examples/shader: bug fix: the CRT example crashed 2022-07-09 22:29:59 +09:00
Bertrand Jung
2453f8f0df
examples/shader: add CRT shader example (#2012)
Closes #2008
2022-03-10 00:02:07 +09:00
Hajime Hoshi
07c8cb0e23 examples: Misspelling (//go:generated -> //go:generate) 2021-09-20 15:23:43 +09:00
Hajime Hoshi
537bdb29f8 examples: Update comments 2021-09-20 15:16:09 +09:00
Hajime Hoshi
a615be69c7 examples: Add //go:build 2021-06-24 21:49:37 +09:00
Hajime Hoshi
81ef20ddd0 examples: Use the new keys
Updates #1394
2021-04-18 01:13:20 +09:00
Hajime Hoshi
d46b0c5b49 examples/shader: Use const
Closes #1192
2021-04-09 02:02:03 +09:00
Hajime Hoshi
ede16afd30 examples/shader: Add a new example 'texel' 2020-12-09 23:33:59 +09:00
Hajime Hoshi
75158feccf examples/shader: Add build tags for the generated files 2020-10-17 22:38:45 +09:00
Hajime Hoshi
47065f5f2c Remove supporting jsgo
Updates #1129
2020-10-07 00:46:07 +09:00
Hajime Hoshi
1b816eb249 ebiten: Remove the error returning value from NewImageFromImage
Updates #1380
2020-10-06 01:03:33 +09:00
Hajime Hoshi
fe97e7b0a5 ebiten: Remove the filter argument from NewImage and NewImageFromImage
Updates #503
2020-10-05 01:40:44 +09:00
Hajime Hoshi
8f00c8fbf5 ebiten: Remove the argument from Update
Fixes #1260
2020-10-04 19:33:10 +09:00
Hajime Hoshi
bf515bb594 Update version to v2.0.0-alpha 2020-10-04 04:30:40 +09:00
Hajime Hoshi
e406ebb1aa ebiten: Rename imageSrcTextureRegion -> imageSrcRegionOnTexture
Updates #1325
2020-09-19 19:36:53 +09:00
Hajime Hoshi
9f7d6962ff ebiten: Rename shader functions to get colors from textures
Updates #1325
2020-09-19 19:01:05 +09:00
Hajime Hoshi
850303b770 ebiten: Change the type of Uniforms to map[string]interface{}
Fixes #1324
2020-09-06 21:02:30 +09:00
Hajime Hoshi
d2cfed7558 examples/shader: Remove an unused variable
Updates #1328
2020-09-01 23:50:19 +09:00
Hajime Hoshi
dd7b0d81ae ebiten: Rename shader builtin functions
* imageSrcTextureSourceRegion -> imageSrcTextureRegion
 * image[N]TextureAt -> imageSrc[N]At
 * image[N]TextureBoundsAt -> imageSrc[N]BoundsAt

Updates #1325
2020-09-01 21:31:50 +09:00
Hajime Hoshi
05a1c2faa1 examples/shader: Always use 1 for an alpha
This is necessary to keep the color pre-multiplied
2020-08-16 02:34:21 +09:00
Hajime Hoshi
06ed4f5444 shader: Implement len function
Fixes #1279
2020-08-16 02:07:39 +09:00
Hajime Hoshi
a1d278b097 examples/shader: Add water.go
Updates #1284
2020-08-15 21:36:13 +09:00
Hajime Hoshi
a1c7c18788 examples/shader: Regenerate files with the latest file2byteslice 2020-08-13 03:03:27 +09:00
Magnus
95022ff1a5
examples/shader: dissolve shader (#1291)
Updates #1284
2020-08-12 00:43:07 +09:00
Hajime Hoshi
08270ee729 shader: Enable to parse ... in an array type 2020-08-11 23:51:22 +09:00
Hajime Hoshi
70acb9c1f6 shader: Rename shader bultin functions
Renamed image0TextureSize to imageSrcTextureSize, and removed the
other texture-size functions.

As texture-coordinates are always in image0's texture texels,
calculations with texels are always done with image0's texture texels.
Then, other texture-size functions are useless. To avoid confusion,
let's remove the functions and leave the necessary funciton.
2020-08-11 05:02:22 +09:00
Hajime Hoshi
b95195ab71 examples/shader: Fix some API usages 2020-08-11 04:25:20 +09:00
Hajime Hoshi
69f87d5fd1 ebiten: Add new shader builtin functions: image[N]TextureBoundAt
Fixes #1287
2020-08-11 03:24:54 +09:00
Hajime Hoshi
bc930ed0ec Revert "examples/shader: Rename ScreenSize -> ImageSize"
This reverts commit 3893f9cdbe.

Reason: The screen size and the image size can be different.
2020-08-11 02:16:16 +09:00