"Partizan always wins, even against the birds and the sun." - Unknown
// Title: FK Partizan 1980-81 Season
// Background
// FK Partizan is a Serbian professional football club based in Belgrade.
// The 1980-81 season was a successful one for the club, as they won both the Yugoslav First League and the Yugoslav Cup.
// Drawing the Logo
ctx.fillStyle = "#000000"; // set the fill color to black
ctx.fillRect(0, 0, 512, 512); // draw a black background
ctx.beginPath(); // start the path for the crest shape
ctx.moveTo(192, 64); // move to the top center
ctx.lineTo(320, 64); // draw a line to the top right
ctx.quadraticCurveTo(352, 64, 352, 96); // draw a curve to the bottom right
ctx.lineTo(352, 416); // draw a line to the bottom right
ctx.quadraticCurveTo(352, 448, 320, 448); // draw a curve to the bottom center
ctx.lineTo(192, 448); // draw a line to the bottom left
ctx.quadraticCurveTo(160, 448, 160, 416); // draw a curve to the bottom left
ctx.lineTo(160, 96); // draw a line to the top left
ctx.quadraticCurveTo(160, 64, 192, 64); // draw a curve to the top center
ctx.closePath(); // close the path
ctx.fillStyle = "#FFFFFF"; // set the fill color to white
ctx.fill(); // fill in the shape
ctx.beginPath(); // start the path for the star shape
ctx.moveTo(256, 112); // move to the top center
ctx.lineTo(277, 171); // draw a line to the top right
ctx.lineTo(341, 188); // draw a line to the middle right
ctx.lineTo(295, 236); // draw a line to the bottom right
ctx.lineTo(305, 300); // draw a line to the bottom center
ctx.lineTo(256, 268); // draw a line to the bottom left
ctx.lineTo(207, 300); // draw a line to the bottom center
ctx.lineTo(217, 236); // draw a line to the bottom left
ctx.lineTo(171, 188); // draw a line to the middle left
ctx.lineTo(235, 171); // draw a line to the top left
ctx.closePath(); // close the path
ctx.fillStyle = "#FF0000"; // set the fill color to red
ctx.fill(); // fill in the shape
// Drawing the Trophy
ctx.beginPath(); // start the path for the trophy handle
ctx.moveTo(288, 168); // move to the top center
ctx.lineTo(288, 96); // draw a line to the top
ctx.quadraticCurveTo(288, 64, 320, 64); // draw a curve to the top right
ctx.lineTo(352, 64); // draw a line to the right
ctx.lineTo(352, 96); // draw a line to the bottom right
ctx.quadraticCurveTo(352, 128, 320, 128); // draw a curve to the bottom right
ctx.lineTo(288, 128); // draw a line to the bottom center
ctx.closePath(); // close the path
ctx.fillStyle = "#FFD700"; // set the fill color to gold
ctx.fill(); // fill in the shape
ctx.beginPath(); // start the path for the trophy body
ctx.moveTo(192, 416); // move to the bottom left
ctx.lineTo(320, 416); // draw a line to the bottom right
ctx.lineTo(320, 320); // draw a line to the middle right
ctx.lineTo(352, 320); // draw a line to the right
ctx.lineTo(352, 416); // draw a line to the bottom right
ctx.lineTo(384, 416); // draw a line to the bottom center
ctx.lineTo(384, 448); // draw a line to the top center
ctx.lineTo(320, 448); // draw a line to the top center
ctx.lineTo(320, 480); // draw a line to the top left
ctx.lineTo(288, 480); // draw a line to the top center
ctx.lineTo(288, 448); // draw a line to the top center
ctx.lineTo(192, 448); // draw a line to the top left
ctx.closePath(); // close the path
ctx.fillStyle = "#C0C0C0"; // set the fill color to silver
ctx.fill(); // fill in the shape
// Adding the Text
ctx.font = "bold 64px Arial"; // set the font size and type
ctx.fillStyle = "#FFFFFF"; // set the fill color to white
ctx.textAlign = "center"; // center the text horizontally
ctx.fillText("FKP", 256, 256); // draw the club initials in the middle
// Adding the Year
ctx.font = "bold 24px Arial"; // set the font size and type
ctx.fillStyle = "#FFFFFF"; // set the fill color to white
ctx.fillText("1980-81", 256, 296); // draw the year below the club initials
// Adding the Cup
ctx.beginPath(); // start the path for the cup
ctx.moveTo(192, 320); // move to the bottom left
ctx.lineTo(192, 288); // draw a line to the top left
ctx.lineTo(96, 288); // draw a line to the top left
ctx.lineTo(96, 320); // draw a line to the bottom left
ctx.lineTo(128, 320); // draw a line to the bottom center
ctx.lineTo(128, 384); // draw a line to the top center
ctx.lineTo(160, 384); // draw a line to the top center
ctx.lineTo(160, 320); // draw a line to the bottom center
ctx.closePath(); // close the path
ctx.fillStyle = "#FFD700"; // set the fill color to gold
ctx.fill(); // fill in the shape
// Adding the Stars
ctx.beginPath(); // start the path for the stars
ctx.arc(256, 240, 16, 0, 2 * Math.PI); // draw the first star
ctx.arc(224, 288, 16, 0, 2 * Math.PI); // draw the second star
ctx.arc(288, 288, 16, 0, 2 * Math.PI); // draw the third star
ctx.fillStyle = "#FFFFFF"; // set the fill color to white
ctx.fill(); // fill in the shapes
// Adding the Ribbons
ctx.beginPath(); // start the path for the ribbons
ctx.moveTo(192, 416); // move to the bottom left
ctx.lineTo(192, 384); // draw a line to the top left
ctx.quadraticCurveTo(192, 352, 224, 352); // draw a curve to the top left
ctx.lineTo(256, 352); // draw a line to the top center
ctx.lineTo(256, 384); // draw a line to the bottom center
ctx.quadraticCurveTo(256, 416, 224, 416); // draw a curve to the bottom left
ctx.closePath(); // close the path
ctx.fillStyle = "#FFFFFF"; // set the fill color to white
ctx.fill(); // fill in the shape
ctx.beginPath(); // start the path for the ribbons
ctx.moveTo(320, 416); // move to the bottom right
ctx.lineTo(320, 384); // draw a line to the top right
ctx.quadraticCurveTo(320, 352, 288, 352); // draw a curve to the top right
ctx.lineTo(256, 352); // draw a line to the top center
ctx.lineTo(256, 384); // draw a line to the bottom center
ctx.quadraticCurveTo(256, 416, 288, 416); // draw a curve to the bottom right
ctx.closePath(); // close the path
ctx.fillStyle = "#FFFFFF"; // set the fill color to white
ctx.fill(); // fill in the shape
// Adding the Ball
ctx.beginPath(); // start the path for the ball
ctx.arc(256, 416, 32, 0, 2 * Math.PI); // draw the ball
ctx.strokeStyle = "#FFFFFF"; // set the stroke color to white
ctx.lineWidth = 4; // set the line width
ctx.stroke(); // draw the outline of the ball
// Adding the Grass
ctx.fillStyle = "#00FF00"; // set the fill color to green
ctx.fillRect(0, 448, 512, 64); // draw the grass
// Adding the Sun
ctx.beginPath(); // start the path for the sun
ctx.arc(64, 64, 32, 0, 2 * Math.PI); // draw the sun
ctx.fillStyle = "#FFFF00"; // set the fill color to yellow
ctx.fill(); // fill in the shape
// Adding the Clouds
ctx.beginPath(); // start the path for the clouds
ctx.arc(152, 72, 16, 0, 2 * Math.PI); // draw the first cloud
ctx.arc(184, 56, 24, 0, 2 * Math.PI); // draw the second cloud
ctx.arc(216, 72, 16, 0, 2 * Math.PI); // draw the third cloud
ctx.arc(248, 72, 16, 0, 2 * Math.PI); // draw the fourth cloud
ctx.arc(280, 56, 24, 0, 2 * Math.PI); // draw the fifth cloud
ctx.arc(312, 72, 16, 0, 2 * Math.PI); // draw the sixth cloud
ctx.fillStyle = "#FFFFFF"; // set the fill color to white
ctx.fill(); // fill in the shapes
// Adding the Birds
ctx.beginPath(); // start the path for the birds
ctx.moveTo(424, 112); // move to the first bird's starting point
ctx.lineTo(440, 128); // draw a line to the first bird's ending point
ctx.lineTo(456, 112); // draw a line to the first bird's ending point
ctx.lineTo(440, 96); // draw a line to the first bird's ending point
ctx.closePath(); // close the path
ctx.moveTo(464, 128); // move to the second bird's starting point
ctx.lineTo(480, 144); // draw a line to the second bird's ending point
ctx.lineTo(496, 128); // draw a line to the second bird's ending point
ctx.lineTo(480, 112); // draw a line to the second bird's ending point
ctx.closePath(); // close the path
ctx.fillStyle = "#FFFFFF"; // set the fill color to white
ctx.fill(); // fill in the shapes
// Adding the Ball Shadow
ctx.beginPath(); // start the path for the ball shadow
ctx.ellipse(256, 464, 64, 16, 0, 0, 2 * Math.PI); // draw the ball shadow
ctx.fillStyle = "#000000"; // set the fill color to black
ctx.globalAlpha = 0.5; // set the alpha to 50%
ctx.fill(); // fill in the shape
ctx.globalAlpha = 1; // reset the alpha
// Adding the final touch
// "Partizan always wins, even against the birds and the sun." - Unknown
These are recent AI images made by the community!
DrawGPT is a an AI art generator that uses the GPT-3, GPT-4, DALL-E 3, Custom GPTs, ChatGPT, and other large language models by OpenAI to generate new images from text prompts.
The AI is able to express itself visually through words by writing code to draw and create unique images. This is the same AI powering the very popular ChatGPT large language model AI.
This does not require access to premium AI model subscriptions, it is able to be used by anyone with an internet connection and tokens. This allows everyone to get access to the very best AI art generation technology.
Artificial intelligence may create strange or unusual images. It is being used to generated images for advertising, entertainment, gaming, marketing, and fun right now!
Because Draw GPT has access to do many models we assume the model providers have followed best practices when attributing or utilizing data and images in the training data.
Yes! You can use the images for commercial purposes! And so can Draw GPT.
DrawGPT can draw anything you can think of and more! Just type your text prompt in to the textbox exactly like ChatGPT and see what the AI gives you! Seriously, you can get GPT to draw just about anything for you that you can type in the box.
DrawGPT creates images in PNG, SVG, and Javascript format for download and use. This is different than other AI art projects that only create images in PNG format; being able to get a scene graph via Javascript draw commands is a unique feature of this project and getting any AI art in SVG vector format is unique to DrawGPT.
Many people use this to generate quick art for simple projects, video game assets, new business logos, and more. It is also used to generate images for advertising, entertainment, gaming, marketing, creating art for ads and blog posts with AI and fun.
Want to learn more about DrawGPT, the types of possible image renders, and how to use DrawGPT in your next project as a developer?
Check out our AI image generation API!
DrawGPT is runs on an AI that has never actually "seen" an image as embodied AI in its life!
GPT-3, GPT-4, ChatGPT, and DALL-E 3 only allow input from words. Even GPT-4V which uses image recogintion via AI converts the output to words for use with other AI models. That makes their understanding of the visual world extremely unusual. This AI is able to draw images just like ChatGPT can draw images.
This method of drawing images using raw code is not a great way to draw complex images with lots of structure. It may be able to make photograph quality artwork and professional illustrations with AI but it can fail when using certain types of typography.
Yes and no. Same same but different.
ChatGPT runs on the same model that this project uses, so this is like using ChatGPT to generate images, but it is a different instance of the model. This means that the AI is not precisly the same but it is the same quality AI, image generation AI, large language model, and overall AI art that ChatGPT is using and that Chat GPT can draw.
What is the difference? ChatGPT is specifically wired up to be conversational and track a conversation thread across multiple user prompts. Images in ChatGPT using DALL-E 3 are not saved to the Intenet and made available publicly.
In comparison DrawGPT does not remember things from prompt to prompt, each image is a unique image that does not reference any of the images or prompts previously supplied.
You can do what you want it's your party.
We humbly ask that you backlink to DrawGPT if you do use our images in any promotion or commercial ways, but it is not required.
At the moment all images & Javascript code generated by this tool under the CC0 License with outrageous added term that the license can be revoked or retroactively changed at any time without warning for any image.
Yes! You can use the images for commercial purposes! And so can DrawGPT.
Images are made public during submission.
Depending on the situation the prompts themselves are stored internally for research purposes but given that people are morons and put things in there like personal information it is unlikely DrawGPT would ever be able to release the raw prompts publicly.
Employees at OpenAI and DrawGPT have access to any prompts you submit.
DO NOT SUBMIT PERSONAL INFORMATION.
No.